RuntimeError:无法在系统路径中找到firefox。请指定firefox二进制位置或安装firefox

时间:2018-02-19 22:01:07

标签: linux python-3.x selenium firefox geckodriver

有人......谁在火狐上使用Selenium。写:

  • 您使用的是哪个Firefox版本
  • 您使用的geckodriver版本
  • 您使用的是哪种硒版本

非常烦人!我有Firefox版本58.0.2,geckodriver 0.19.1,selenium 3.9.0,python 3.6.4但它不起作用!错误。

我在没有sudo apt-get(解压缩存档)的情况下安装了Firefox,因为存储库没有新版本的Firefox。

1 个答案:

答案 0 :(得分:2)

所以问题是,selenium找不到Firefox,因为它的路径不在你的$ PATH变量上。

要解决问题,您有两个选择:

  1. 使用包管理器从存储库安装Firefox

  2. 将已安装的Firefox二进制文件指定为selenium。

  3. 将Firefox二进制文件添加到Path变量。

  4. 对于第二个选项:

    要设置Firefox的自定义路径,您需要使用FirefoxBinary:

    from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
    
    binary = FirefoxBinary('/Firefox/Path')
    driver = webdriver.Firefox(firefox_binary=binary)
    

    第三种选择:

    将以下内容添加到〜/ .profile或〜/ .bashrc:

    export PATH="$PATH:/home/firefox"
    

    使用 获取Firefox路径which firefoxwhereis firefox