我正在尝试将Selenium与Python结合使用。 因此,我编写了以下代码,并将其保存为工作目录 / Users / ykt68 / seleniumwork中 名为 test.py 的文件。
[ykt68@macbp15 seleniumwork]$ pwd /Users/ykt68/seleniumwork [ykt68@macbp15 seleniumwork]$ cat -n test.py
1 #! /usr/bin/env python 2 # -*- encoding: utf-8 -*- 3 4 from selenium import webdriver 5 from selenium.webdriver.common.keys import Keys 6 7 driver = webdriver.Firefox() 8 driver.get("http://www.python.org") 9 assert "Python" in driver.title 10 elem = driver.find_element_by_name("q") 11 elem.clear() 12 elem.send_keys("pycon") 13 elem.send_keys(Keys.RETURN) 14 assert "No results found." not in driver.page_source 15 driver.close()
[ykt68@macbp15 seleniumwork]$
上面的这些代码与使用Python的Selenium文档中的2.1简单用法相同。
当我为上面的test.py运行python命令时,
[ykt68@macbp15 seleniumwork]$ python test.py Traceback (most recent call last): File "test.py", line 7, in <module> driver = webdriver.Firefox() File "/Users/ykt68/.pyenv/versions/seleniumwork/lib/python3.5/site-packages/selenium/webdriver/firefox/webdriver.py", line 80, in __init__ self.binary, timeout) File "/Users/ykt68/.pyenv/versions/seleniumwork/lib/python3.5/site-packages/selenium/webdriver/firefox/extension_connection.py", line 52, in __init__ self.binary.launch_browser(self.profile, timeout=timeout) File "/Users/ykt68/.pyenv/versions/seleniumwork/lib/python3.5/site-packages/selenium/webdriver/firefox/firefox_binary.py", line 68, in launch_browser self._wait_until_connectable(timeout=timeout) File "/Users/ykt68/.pyenv/versions/seleniumwork/lib/python3.5/site-packages/selenium/webdriver/firefox/firefox_binary.py", line 108, in _wait_until_connectable % (self.profile.path)) selenium.common.exceptions.WebDriverException: Message: Can't load the profile. Profile Dir: /var/folders/86/55p1gj4j4xz2nw9g5q224bk40000gn/T/tmpf0uolidn If you specified a log_file in the FirefoxBinary constructor, check it for details. [ykt68@macbp15 seleniumwork]$
请教我为什么会发生此错误,以及如何解决该问题,或者列出一些我应该参考的帖子或文件。
此外,
[ykt68@macbp15 seleniumwork]$ python -V Python 3.5.2 [ykt68@macbp15 seleniumwork]$ /Applications/Firefox.app/Contents/MacOS/firefox -v Mozilla Firefox 48.0.2 [ykt68@macbp15 seleniumwork]$ /Applications/Firefox.app/Contents/MacOS/firefox-bin -v Mozilla Firefox 48.0.2 [ykt68@macbp15 seleniumwork]$ pip list pip (8.1.2) selenium (2.53.6) setuptools (20.10.1) [ykt68@macbp15 seleniumwork]$
我引用了Selenium的类似文章 :FirefoxProfile异常无法加载配置文件。所以我尝试了
pip install -U selenium
但是上面带有错误消息的情况保持不变。
最好的祝福。
据我了解和得出的结论,您可以保留最新的selenium软件包版本,但是必须 将Firefox降级为47 (47.0.1是47分支的最新稳定版本)。
selenium