Я пытаюсь создать исполняемый файл с помощью Pyinstaller.
Однако при выполнении
pyinstaller -F __main__.py
и затем, запустив исполняемый файл, я получаю эту ошибку:
Traceback (последний вызов был последним):
Файл " main .py", строка 8, в
из mainLoop импортировать MainLoop
Файл "/usr/lib/python3.6/site-packages/PyInstaller/loader/pyimod03_importers.py", строка 631, в exec_module
exec (байт-код, модуль. dict )
Файл "mainLoop.py", строка 8, в
запросы на импорт
Файл "/usr/lib/python3.6/site-packages/PyInstaller/loader/pyimod03_importers.py", строка 631, в exec_module
exec (байт-код, модуль. dict )
Файл "site-пакеты / запросы / init .py", строка 44, в
ModuleNotFoundError: нет модуля с именем 'chardet'
Я также пытался со скрытым импортом, например, так:
pyinstaller --hidden-import=chardet -F __main__.py
но я получаю следующую ошибку:
184 ИНФОРМАЦИЯ: PyInstaller: 3.3.1
184 ИНФОРМАЦИЯ: Python: 3.6.5
185 ИНФОРМАЦИЯ: Платформа: Linux-4.14.48-2-MANJARO-x86_64-with-arch-Manjaro-Linux
185 ИНФОРМАЦИЯ: писал /home/ronan/insideapp/insideapp-agent/agent/main.spec
187 ИНФОРМАЦИЯ: UPX недоступен.
188 ИНФОРМАЦИЯ: Расширение PYTHONPATH путями
[ '/ Дом / Ronan / insideapp / insideapp-агент',
'/ Дом / Ronan / insideapp / insideapp-агент / агент']
188 ИНФОРМАЦИЯ: проверка анализа
188 ИНФОРМАЦИЯ: Построение анализа, поскольку out00-Analysis.toc не существует
188 ИНФОРМАЦИЯ: Инициализация графа зависимостей модуля ...
192 ИНФОРМАЦИЯ: Инициализация модуля перехватывает граф
193 ИНФОРМАЦИЯ: Анализ base_library.zip ...
4685 ИНФОРМАЦИЯ: Анализ скрытого импорта 'chardet'
4685 ОШИБКА: скрытый импорт 'chardet' не найден
Я тоже попробовал крючок вот так:
from PyInstaller.utils.hooks import collect_submodules
from PyInstaller.utils.hooks import collect_data_files
hiddenimports = collect_submodules('chardet')
datas = collect_data_files('chardet')
Я запустил Pyinstaller с помощью этой команды:
pyinstaller --additional-hooks-dir=. -F __main__.py
Но я получаю ту же ошибку, что и при запуске:
pyinstaller -F __main__.py
Спасибо за любую помощь, которую вы можете оказать.