pyinstaller не включает requests

Хочу сделать исполняемый файл для моего import.py, чтобы прогу можно было запускать без питона. Делаю вот так:

pyinstaller import.py --hiddenimport=requests

После сборки и запуске файла падает ошибка:

➜  import git:(main) ✗ ./import
Traceback (most recent call last):
  File "import.py", line 11, in <module>
ModuleNotFoundError: No module named 'requests'
[33241] Failed to execute script 'import' due to unhandled exception!

Что можно сделать в таком случае? pyinstaller пропускает некоторые пакеты?


Ответы (1 шт):

Автор решения: Don Perez

Нужно добавить path для поиска пакетов, используемых в import. Например, так:

pyinstaller --path ./pyvenv/lib/python3.12/site-packages HelloWorld.py

пакеты могут быть в виртуальном окружении или в глобальной директории. Также, есть проблемы запуска при создании исполняемого файла с активированным venv. Т.е. скорее всего нужно будет указывать путь к глобальным библиотекам через файл .spec и тогда возможно всё получится.

→ Ссылка