2013-08-06 10 views

Odpowiedz

3

Tak, za pomocą BrowsermobProxy można wygenerować plik HAR za pomocą chromedriver.

Oto skrypt w Pythonie, aby programowo generować plik HAR za pomocą Selenium, BrowserMob Proxy i chromedriver. Pakiety Pythona dla selenu i przeglądarki-proxy są potrzebne do uruchomienia tego skryptu.

from browsermobproxy import Server 
from selenium import webdriver 
import os 
import json 
import urlparse 

server = Server("path/to/browsermob-proxy") 
server.start() 
proxy = server.create_proxy() 

chromedriver = "path/to/chromedriver" 
os.environ["webdriver.chrome.driver"] = chromedriver 
url = urlparse.urlparse (proxy.proxy).path 
chrome_options = webdriver.ChromeOptions() 
chrome_options.add_argument("--proxy-server={0}".format(url)) 
driver = webdriver.Chrome(chromedriver,chrome_options =chrome_options) 
proxy.new_har("http://stackoverflow.com", options={'captureHeaders': True}) 
driver.get("http://stackoverflow.com")  
result = json.dumps(proxy.har, ensure_ascii=False) 
print result 
proxy.stop()  
driver.quit() 
+1

Możesz to sprawdzić jako kompletne rozwiązanie: [speedprofile] (https://github.com/parasdahal/speedprofile) –

0

Możesz włączyć rejestr wydajności za pomocą chromedriver i analizować ruch sieciowy w celu samodzielnego zbudowania HAR.