Не могу скомпилировать Python, используя Nuitka

Я пытаюсь скомпилировать файл Python, который использует urllib.request, BeautifulSoup и веб-браузер.

$ nuitka python.py
Nuitka:WARNING:python.py:16: Cannot find 'urllib.request' as relative or absolute import.
Nuitka:WARNING:python.py:17: Cannot find 'bs4' as relative or absolute import.

$ ./python.exe
Traceback (most recent call last):
  File "python.py", line 16, in <module>
    from urllib.request import urlopen
ImportError: No module named request

5 ответов

Попробуй добавить --recurse-to=urllib в командной строке во время выполнения Nuitka. Смотрите Nuitka справку для деталей.

Я получил несколько похожих сообщений об ошибках. Вы устанавливали как Python2, так и Python3? Это решило проблему для меня.

(Установка обеих версий является необходимой, как упомянуто здесь: http://nuitka.net/doc/user-manual.html, раздел "Python3, да, но зависимость от времени компиляции Python2")

В вашей системе установлены как python2, так и python3, проверьте версию python, используя

      $python --version

urllib.request будет отсутствовать только в том случае, если nuitka использует python2 для компиляции вашего кода python3. в python2.7 нет urllib.request

то же самое с бс4..

где-то в вашей системе скрывается python2, и nuitka использует его для компиляции вашего кода python3.

чтобы убедиться, что используется python3

      $/path to python3/python -m nuitka program.py

или где python 3.7 имеет псевдоним python3

      $python3 -m nuitka program.py

Вы можете использовать другой компилятор, такой как pycharm или VScode, для компиляции кода Python.

Вы можете использовать Nuitka для компиляции программ Python в автономные исполняемые файлы, а затем распространять их без среды выполнения Python.

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