【发布时间】:2019-05-06 22:11:19
【问题描述】:
我正在使用 Browsermob 代理,一个简单的脚本(如下)运行速度非常慢。我猜,这是启动新服务器所需的时间。
如果是这种情况,有没有办法启动服务器以在不同的脚本执行之间使用它?
如果不是这种情况,是什么导致我的脚本变慢?
from browsermobproxy import Server
from selenium.webdriver.firefox.options import Options
from selenium import webdriver
import json
server = Server("/anaconda3/lib/python3.7/site-packages/browsermobproxy/browsermob-proxy-2.1.4/bin/browsermob-proxy")
server.start()
proxy = server.create_proxy()
print(1)
profile = webdriver.FirefoxProfile(profile_directory=r'./')
print(2)
profile.set_proxy(proxy.selenium_proxy())
print(4)
opts = Options()
opts.headless = True
driver = webdriver.Firefox(profile, executable_path=r'./geckodriver', options=opts)
print(5)
proxy.new_har()
driver.get("http://value.to")
proxy.har # returns a HAR JSON blob
#print(proxy.har)
print("analytics in value.to:")
for entry in proxy.har["log"]["entries"]:
if "google-analytics" in entry["request"]["url"]:
print(entry["request"]["url"])
print("\n\n\n")
proxy.new_har()
driver.get("http://insightwhale.com")
proxy.har # returns a HAR JSON blob
#print(proxy.har)
print("analytics in insightwhale:")
for entry in proxy.har["log"]["entries"]:
if "google-analytics" in entry["request"]["url"]:
print(entry["request"]["url"])
print(json.dumps(proxy.har, indent=4, sort_keys=True))
file = open("____tmp.txt", "w")
file.write(json.dumps(proxy.har, indent=4, sort_keys=True))
file.close()
server.stop()
driver.quit()
【问题讨论】:
标签: python selenium browsermob-proxy