在Selenium期间更改代理服务器

所以一切正常

fp = webdriver.FirefoxProfile()

fp.set_preference("network.proxy.type", 1)

fp.set_preference("network.proxy.http", PROXY_HOST)

fp.set_preference("network.proxy.http_port", int(PROXY_PORT))

fp.update_preferences()

driver = webdriver.Firefox(firefox_profile=fp)

但是,如果已经创建了驱动程序,则无法安装代理。这是行不通的

driver = webdriver.Firefox()

driver.profile.set_preference("network.proxy.type", 1)

driver.profile.set_preference("network.proxy.http", PROXY_HOST)

driver.profile.set_preference("network.proxy.http_port", int(PROXY_PORT))

driver.profile.update_preferences()

也是如此。

 driver = webdriver.Firefox()

driver.firefox_profile.set_preference("network.proxy.type", 1)

driver.firefox_profile.set_preference("network.proxy.http", PROXY_HOST)

driver.firefox_profile.set_preference("network.proxy.http_port", int(PROXY_PORT))

driver.firefox_profile.update_preferences()

为什么?不能理解。我做错了吗?

回答:

在Firefox中使用WebDriver时,使用配置文件是一次性的事情。驱动程序启动浏览器时,它将配置文件对象写入磁盘,然后启动浏览器可执行文件。此后,浏览器将没有任何机制可以读取对WebDriver配置文件对象的任何进一步的更改。要更改代理,必须在启动浏览器之前在配置文件中设置设置。

以上是 在Selenium期间更改代理服务器 的全部内容, 来源链接: utcz.com/qa/424296.html

回到顶部