安装Firefox'marionette_driver'python包时遇到错误

时间:2017-04-11 17:19:17

标签: python-3.x firefox pip ubuntu-16.04 firefox-marionette

安装Mozilla自动化客户端'marionette_driver'时出错。

Mozilla documentation表示要使用以下命令进行安装:

$ pip install marionette_driver

这会产生错误:

Collecting marionette_driver
  Downloading marionette_driver-2.2.0.tar.gz
Collecting mozrunner>=6.13 (from marionette_driver)
  Downloading mozrunner-6.13.tar.gz (67kB)
    100% |████████████████████████████████| 71kB 1.5MB/s
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-0829rk11/mozrunner/setup.py", line 24, in
<module>
        assert sys.version_info[0] == 2
    AssertionError

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in
/tmp/pip-build-0829rk11/mozrunner/

pip install命令的这些变体会产生相同的错误。

$ sudo pip install marionette_driver
$ sudo -H pip install marionette_driver
$ pip3 install marionette_driver
$ sudo pip3 install marionette_driver
$ sudo -H pip3 install marionette_driver

(debian系统似乎需要pip3来安装python3包,虽然有人建议使用sudo -H可以避免egg_info错误。似乎没有区别。)

我安装了Python 2.7和3.5。我通常希望pip安装python 2包。但我使用3.5,所以我知道什么?无论如何,使用pip和pip3会发生同样的错误。

1 个答案:

答案 0 :(得分:2)

安装mozrunner的{​​{1}}依赖项时会发生错误。该错误消息表明它正在检查它是否在Python版本2.x(marionette_driver)上运行,它正如您所期望的那样失败。不幸的是,在编写本文时,没有{3}的Python 3兼容版本,因此看起来您将无法为Python 3安装assert sys.version_info[0] == 2

如果您正在使用虚拟环境(例如,使用mozrunnermarionette_driver或类似),您应该能够创建一个Python 2环境并使用virtualenv安装它。< / p>

此外,在大多数类Unix系统上,您可以同时安装Python 2和3.通常,可执行文件将被称为anacondapip,其中一个是sym链接到默认值python2。相应的python3python可执行文件也是如此。如果您的系统上安装了Python 2,那么通过pip2运行安装可能会更好。