python selenium 无法使用 Firefox 扩展 - 消息:无法加载配置文件。简介目录
Posted
技术标签:
【中文标题】python selenium 无法使用 Firefox 扩展 - 消息:无法加载配置文件。简介目录【英文标题】:python selenium does not scale with firefox - Message: Can't load the profile. Profile Dir 【发布时间】:2016-09-19 17:30:12 【问题描述】:为什么在 python 和 firefox 中使用 selenium 会发生这种情况? Selenium 无法扩展到简单的循环。为什么Firefox不能缩放?随着时间的推移,它决定抛出错误并退出。
Mozilla Firefox 45.0 selenium.版本 '2.53.2'
from pyvirtualdisplay import Display
display = Display(visible=0, size=(800, 600))
display.start()
mylist = ['page1','page1',...,'pageN']
while True:
for data in mylist:
browser = webdriver.Firefox()
try:
myfunc(data) # Code that uses selenum to fetch pages
except:
pass
browser.quit()
time.sleep(60)
No handlers could be found for logger "sentry.errors.serializer"
Traceback (most recent call last):
File "platrieveerp.py", line 231, in <module>
browser = webdriver.Firefox()
File "/usr/local/lib/python2.7/dist-packages/selenium-2.53.2-py2.7.egg/selenium/webdriver/firefox/webdriver.py", line 103, in __init__
self.binary, timeout)
File "/usr/local/lib/python2.7/dist-packages/selenium-2.53.2-py2.7.egg/selenium/webdriver/firefox/extension_connection.py", line 51, in __init__
self.binary.launch_browser(self.profile, timeout=timeout)
File "/usr/local/lib/python2.7/dist-packages/selenium-2.53.2-py2.7.egg/selenium/webdriver/firefox/firefox_binary.py", line 68, in launch_browser
self._wait_until_connectable(timeout=timeout)
File "/usr/local/lib/python2.7/dist-packages/selenium-2.53.2-py2.7.egg/selenium/webdriver/firefox/firefox_binary.py", line 106, in _wait_until_connectable
% (self.profile.path))
selenium.common.exceptions.WebDriverException: Message: Can't load the profile. Profile Dir: /tmp/tmpOgsKOx If you specified a log_file in the FirefoxBinary constructor, check it for details.
【问题讨论】:
快速检查 - 在driver.close()
而不是driver.quit()
的情况下会抛出相同的错误吗?谢谢。
【参考方案1】:
Selenium 在运行循环时没有失败,它在 webdriver.Firefox() 处失败。当脚本仍然无法识别打开的 Firefox 应用程序时,在第 231 行之后的某个时间连接超时时会识别该错误。
在使用无头浏览器运行时,这只是 selenium 中的一个错误。要获取 selenium 的工作版本,请运行
sudo pip install -U selenium
这应该是一个类似的问题: Selenium: FirefoxProfile exception Can't load the profile
【讨论】:
我今天早些时候实际上遇到了同样的问题,并认为我用上述语句解决了它。事实证明,它仅在我通过 crontab 而不是在终端中运行脚本时才有效。并不是说使用 crontab 运行脚本是解决方案,而是分享我同样的问题 我今天运行了两次脚本,成功然后开始陷入这个陷阱,清除临时文件,没有工作。最糟糕的是,它仍然在我的本地工作,只是停止在服务器上工作!以上是关于python selenium 无法使用 Firefox 扩展 - 消息:无法加载配置文件。简介目录的主要内容,如果未能解决你的问题,请参考以下文章
Selenium2+python自动化2-pip降级selenium3.0
Selenium2+python自动化2-pip降级selenium3.0