Ошибка при установке пакета Python Firefox 'marionette_driver'

Ошибка установки клиента автоматизации Mozilla "marionette_driver".

Документация Mozilla говорит об установке с помощью следующей команды:

$ 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

(Похоже, что для установки пакетов python3 в системах debian требуется pip3, хотя предполагается, что ошибки egg_info можно избежать с помощью sudo -H. Похоже, что это не имеет значения.)

У меня установлены оба Python 2.7 и 3.5. Обычно я ожидаю, что pip установит пакеты Python 2. Но я использую 3.5, так что я знаю? В любом случае, такая же ошибка возникает при использовании pip и pip3.

1 ответ

Решение

Ошибка возникает при установке mozrunner зависимость от marionette_driver, Сообщение об ошибке указывает, что он проверяет, что он работает на Python версии 2.x (assert sys.version_info[0] == 2), что не так, как вы ожидаете. К сожалению, на момент написания этой статьи не было Python 3-совместимой версии mozrunnerтак, похоже, вы не сможете установить marionette_driver для Python 3.

Если вы используете виртуальные среды (например, с virtualenv, anacondaили аналогичный), вы должны иметь возможность создать среду Python 2 и установить ее там с pip,

Кроме того, в большинстве Unix-подобных систем вы можете установить Python 2 и 3. Обычно исполняемые файлы будут называться python2 а также python3с одним из них, связанным с символом по умолчанию python, То же самое касается соответствующего pip2 а также pip3 исполняемые файлы. Возможно, вам повезет, если вы запустили установку через pip2, если у вас установлен Python 2 в вашей системе.

Другие вопросы по тегам