安装Firefox'marionette_driver'python软件包时出错
问题描述:
安装Mozilla自动化客户端'marionette_driver'时出错。安装Firefox'marionette_driver'python软件包时出错
的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/
画中画的这些变化安装命令产生相同的误差。
$ 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会发生同样的错误。
答
当您安装marionette_driver
的mozrunner
依赖关系时会出现错误。该错误消息表明它正在检查它是否正在Python版本2.x(assert sys.version_info[0] == 2
)上运行,该错误与您预期的一样。不幸的是,在写作时,没有的mozrunner
的Python 3兼容的版本,所以它看起来像你将不能够如果您正在使用虚拟环境(安装marionette_driver
为Python 3
例如用virtualenv
,anaconda
,或类似的),你应该能够创建一个Python 2环境并且在那里安装它,使用pip
。
此外,在大多数Unix类系统中,你可以同时安装Python 2和3。一般情况下,可执行文件将被称为python2
和python3
,与他们的一个符号链接到默认python
。对应的pip2
和pip3
可执行文件也是如此。如果您的系统上安装了Python 2,那么通过pip2
运行安装可能会更好。
'assert sys.version_info [0] == 2'表示只能为Python 2.x安装。 –
但是,错误发生在'mozrunner'中,这似乎是您需要的软件包的依赖关系。也许先尝试找到一个Py3兼容版本的'mozrunner'。 –
谢谢你教我阅读我的错误消息,疯狂物理。我必须承认,我对它有点模糊。你击中了要害。我在谷歌推行了你的建议,事实上,mozunner和其他8个Mozilla的moz包似乎是古怪而古老的,几乎是未被转换为Python 3的200个最常用的Python包中唯一的包。 (参考:https://python3wos.appspot.com)。 – markling