一尘不染

Selenium WebDriver通过Python3.5和FF48发生“无法加载配置文件”错误

selenium

我正在尝试将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]$

上面的这些代码与使用PythonSelenium文档中的2.1简单用法相同。

当我为上面的test.py运行python命令时,

  • FireFox浏览器启动并打开一个空白选项卡。
  • 大约30秒过后,将显示以下错误消息,并关闭FireFox窗口。
    [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]$

请教我为什么会发生此错误,以及如何解决该问题,或者列出一些我应该参考的帖子或文件。

此外,

  1. 环境:
    • 操作系统:Apple OS X Version 10.11.6
    • Python版本:3.5.2
    • FireFox版本:48.0.2
    • selenium版本:2.53.6
    [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]$
  1. 我引用了Selenium的类似文章 :FirefoxProfile异常无法加载配置文件。所以我尝试了

    pip install -U selenium

但是上面带有错误消息的情况保持不变。

最好的祝福。


阅读 205

收藏
2020-06-26

共1个答案

一尘不染

据我了解和得出的结论,您可以保留最新的selenium软件包版本,但是必须 将Firefox降级为47
47.0.1是47分支的最新稳定版本)。

2020-06-26