python - 带有 selenium 的 Browsermob 代理生成空输出

标签 python selenium selenium-webdriver browsermob browsermob-proxy

我正在使用 selenium 3.0.2 和 browsermob 代理 0.7.1 来捕获网络数据。我得到的只是一个空的 JSON。我的代码是:

server = Server("/Users/dev/Downloads/browsermob-proxy-2.1.2/bin/browsermob-proxy")
server.start()
proxy = server.create_proxy()

if browser is None:
    profile = webdriver.FirefoxProfile()
    profile.set_preference("browser.privatebrowsing.autostart", True)

browser = webdriver.Firefox(firefox_profile=profile, proxy=proxy.selenium_proxy())
proxy.new_har("google", options={'captureHeaders': True, 'captureContent': True})

browser.get("https://google.com/")

print(proxy.har)

我得到的只是这个空的 JSON

{'log': {'pages': [{'id': 'google', 'comment': '', 'pageTimings': {'comment': ''}, 'startedDateTime': '2016-12-01T14:23:24.984-05:00', 'title': 'google'}], 'entries': [], 'version': '1.2', 'creator': {'comment': '', 'name': 'BrowserMob Proxy', 'version': '2.1.2'}, 'comment': ''}}

最佳答案

你试过改变

这个:

server = Server("/Users/dev/Downloads/browsermob-proxy-2.1.2/bin/browsermob-proxy") 

为此:

server = Server("/Users/dev/Downloads/browsermob-proxy-2.1.2/bin/browsermob-proxy.bat")

您需要在 BrowserMob 服务器路径的末尾包含文件扩展名 (.bat) 才能工作:)

关于python - 带有 selenium 的 Browsermob 代理生成空输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40919104/

相关文章:

python - 如何根据 Django CMS 中的区域动态更改 header 中的链接标签

python - 属性和数据类属性的 Getter 函数

java - Webdriver 自动化 - 无法使用 xpath 查找元素(在 Octane 2.0 基准页面中)

java - Selenium Webdriver 元素识别

python - 使用 selenium webdriver python 上传文件

python - 创建矩阵的最快方法,其中列是彼此的乘积

python - 更改 PIL 图像的 alpha 时出错

PHPUnit_Selenium : Don't throw exceptions if element not found?

testing - 使用/不同语言绑定(bind)的 Selenium 端到端测试

python - 为什么 text、innerText、innerHTML 在 selenium 中返回空