AttributeError:“ FirefoxProfile”对象通过Selenium和Python使用FirefoxProfile没有属性“更新”错误

时间:2019-11-28 11:00:20

标签: python selenium selenium-webdriver firefox firefox-profile

大家好,我的代码有问题。

from selenium import webdriver
import time

profile = webdriver.FirefoxProfile()
profile.set_preference('network.proxy_type',1)
profile.set_preference('network.proxy.http',"91.xx.xxx.xx")
profile.set_preference('network.proxy.http_port',xxxx)
# profile.update_preference()  ---> this code letter giving the error.
driver = webdriver.Firefox(firefox_profile=profile)
driver.get('http://whatismyipaddress.com')
time.sleep(3)
driver.close()

这是我遇到的错误:

AttributeError: 'FirefoxProfile' object has no attribute 'update'

我无法解决我只想保存配置文件设置以供使用的问题。

2 个答案:

答案 0 :(得分:1)

我认为您需要对此进行更改

profile.update_preference()

与此:

profile.update_preferences()

答案 1 :(得分:1)

update_preferences()

update_preferences()使用所需的 FirefoxProfile 冻结首选项更新default_preferences,该首选项定义为:

def update_preferences(self):
    for key, value in FirefoxProfile.DEFAULT_PREFERENCES['frozen'].items():
        self.default_preferences[key] = value
    self._write_user_prefs(self.default_preferences)

但是,你很近。您需要用 update_preference() 替换update_preferences(),即,在代码中有效地需要替换:

profile.update_preference()

使用

profile.update_preferences()

参考

您可以在以下位置找到相关讨论: