Windowsで、Pythonスクリプトを PyInstaller で exe化したものを実行した際に、ModuleNotFoundError: No module named ‘XXXXXXX’ といったエラーが出る場合の対処です。
下記のように、Pythonスクリプト(下記例ではtest.py)を指定して実行します。
pipenv run pyinstaller test.py --onefile
distディレクトリ下にできている test.exe を実行します。
test.exe実行でターミナルが開き、その画面で、
ModuleNotFoundError: No module named ‘XXXXXXX’
と出たら、test.py と同じ場所に出来ている test.spec を次のように修正します。
変更前
hiddenimports=[],
変更後
hiddenimports=['XXXXXXX'],
修正したら下記を実行します。これで動作するようになります。
pipenv run pyinstaller test.spec
参考
PaSoRiを用いた勤怠システムをpyinstallerで.exe化したら動かない
Pyinstallerを使ってPythonコードから生成した実行ファイルについて、実行時エラーModuleNotFoundErrorを回避 #Python – Qiita
Pyinstallerでmodule not found errorが発生してしまう
コメント