我正在尝试运行以下Python代码,通过Selenium创建一个Firefox Webdriver窗口:
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.google.com")
虽然这段代码几周前工作正常,但它现在会产生以下预感信息:
Traceback (most recent call last):
File "test.py", line 2, in <module>
driver = webdriver.Firefox()
File "c:\python27\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 60, in __init__
self.binary, timeout),
File "c:\python27\lib\site-packages\selenium\webdriver\firefox\extension_connection.py", line 47, in __init__
self.binary.launch_browser(self.profile)
File "c:\python27\lib\site-packages\selenium\webdriver\firefox\firefox_binary.py", line 61, in launch_browser
self._wait_until_connectable()
File "c:\python27\lib\site-packages\selenium\webdriver\firefox\firefox_binary.py", line 105, in _wait_until_connectable
self.profile.path, self._get_firefox_output()))
selenium.common.exceptions.WebDriverException: Message: 'Can\'t load the profile. Profile Dir: c:\\users\\douglas\\appdata\\local\\temp\\tmpuf4ipq Firefox output: *** LOG addons.xpi: startup\r\n*** WARN addons.xpi: Ignoring missing add-on in C:\\Program Files\\CheckPoint\\ZAForceField\\WOW64\\TrustChecker\r\n*** WARN addons.xpi: Ignoring missing add-on in C:\\ProgramData\\Norton\\{78CA3BF0-9C3B-40e1-B46D-38C877EF059A}\\NSM_2.9.5.20\\coFFFw\r\n*** LOG addons.xpi: Skipping unavailable install location app-system-local\r\n*** LOG addons.xpi: Skipping unavailable install location app-system-share\r\n*** LOG addons.xpi: checkForChanges\r\n*** LOG addons.xpi: No changes found\r\n*** Blocklist::_loadBlocklistFromFile: blocklist is disabled\r\n************************************************************\r\n* Call to xpconnect wrapped JSObject produced this error: *\r\n[Exception... "\'[JavaScript Error: "this._defaultEngine is null" {file: "resource://gre/components/nsSearchService.js" line: 3527}]\' when calling method: [nsIBrowserSearchService::currentEngine]" nsresult: "0x80570021 (NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS)" location: "JS frame :: chrome://browser/content/search/search.xml :: get_currentEngine :: line 130" data: yes]\r\n************************************************************\r\n************************************************************\r\n* Call to xpconnect wrapped JSObject produced this error: *\r\n[Exception... "\'[JavaScript Error: "this._defaultEngine is null" {file: "resource://gre/components/nsSearchService.js" line: 3527}]\' when calling method: [nsIBrowserSearchService::currentEngine]" nsresult: "0x80570021 (NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS)" location: "JS frame :: chrome://browser/content/search/search.xml :: get_currentEngine :: line 130" data: yes]\r\n************************************************************\r\n************************************************************\r\n* Call to xpconnect wrapped JSObject produced this error: *\r\n[Exception... "\'[JavaScript Error: "this._defaultEngine is null" {file: "resource://gre/components/nsSearchService.js" line: 3527}]\' when calling method: [nsIBrowserSearchService::currentEngine]" nsresult: "0x80570021 (NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS)" location: "JS frame :: resource://app/components/nsBrowserGlue.js :: <TOP_LEVEL> :: line 354" data: yes]\r\n************************************************************\r\n************************************************************\r\n* Call to xpconnect wrapped JSObject produced this error: *\r\n[Exception... "\'[JavaScript Error: "this._defaultEngine is null" {file: "resource://gre/components/nsSearchService.js" line: 3527}]\' when calling method: [nsIBrowserSearchService::currentEngine]" nsresult: "0x80570021 (NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS)" location: "JS frame :: resource://app/components/nsBrowserGlue.js :: <TOP_LEVEL> :: line 354" data: yes]\r\n************************************************************\r\n'
有谁知道这意味着什么,或者我可以采取哪些措施来纠正错误并让代码按预期运行?我通过Google搜索找到了相关的错误消息,但没有任何可以让我解决问题。
对于它的价值,我可以通过将上面的第二行更改为driver = webdriver.Chrome()
来打开Chrome Webdriver而不会出现问题。
我正在使用Python 2.7,Selenium 2.35.0(我刚刚在Windows 8计算机上运行“pip install selenium --upgrade”和Firefox 26.0。非常感谢其他人提供的任何提示或建议。
答案 0 :(得分:29)
Selenium 2.35与Firefox 26不兼容。正如release notes所述,在Selenium 2.39中添加了FF 26支持。您需要更新到2.39。请改为pip install -U selenium
。
答案 1 :(得分:0)
不确定它在Windows上是否也能正常工作,但对我来说,Firefox 26和selenium 2.37.0的组合工作正常。
答案 2 :(得分:0)
我在Win8.1 FF28和python3.4 / selenium 2.41中也有这个问题。但是在我将FF降级到24之后,它起作用了!我也在Win8.1 / FF27 / Python3.4 / Selenium 2.41中进行了测试,它也有效。
答案 3 :(得分:0)
我刚刚遇到FF36和selenium 2.44.0。重新安装FF 32.0修复它。
答案 4 :(得分:0)
我在Kubuntu 14.04桌面上遇到了同样的问题,我删除了Firefox 47.XX并重新安装了Firefox 45.XX并解决了问题。
下载firefox debian软件包