【发布时间】:2015-02-24 19:21:34
【问题描述】:
我正在尝试使用 BrowserMob 通过 Selenium WebDriver 代理页面。当 (Python) 测试用例尝试从 localhost 加载页面时,BrowserMob 无法代理它们。
BrowserMob 是否可以代理连接到本地主机的网络服务器?
【问题讨论】:
标签: python-2.7 selenium-webdriver browsermob
我正在尝试使用 BrowserMob 通过 Selenium WebDriver 代理页面。当 (Python) 测试用例尝试从 localhost 加载页面时,BrowserMob 无法代理它们。
BrowserMob 是否可以代理连接到本地主机的网络服务器?
【问题讨论】:
标签: python-2.7 selenium-webdriver browsermob
我在使用 Selenium ChromeDriver 时遇到了同样的问题。它没有为 localhost 使用代理。
将 seleniumProxy 的 noProxy 属性设置为“”解决了这个问题。
val seleniumProxy = ClientUtil.createSeleniumProxy(this)
...
seleniumProxy.noProxy = "<-loopback>"
【讨论】:
BrowserMob Proxy 将与 localhost 一起使用,但仅在最新版本 (2.0.0) 中,并且仅在 defining the bmp.allowNativeDnsFallback Java property 运行代理时。我不熟悉 Python 包装器,但它不太可能满足这些条件。
问题在于 BrowserMob 代理使用的 DNS 解析,它基本上忽略了定义 localhost 的主机文件。如果您在发出请求时使用 127.0.0.1 而不是 localhost,它应该适合您。
【讨论】: