运行我的exe的错误消息:
ModuleNotFoundError: No module named 'openpyxl'
testHi.py
#simple test to see if openpyxl module works
import openpyxl
print ("hi")
input()
hook-openpyxl.py
# taken from pyinstaller dev team, store in same dir as testHi.py
from PyInstaller.utils.hooks import collect_data_files
datas = collect_data_files('openpyxl')
cmd行输入:
pyinstaller.exe --onefile --icon=py.ico --additional-hooks-dir=. hiTest.py
我运行hiTest并得到上面的错误。
我到处寻找这个解决方案。谁能告诉我我做错了什么。
答案 0 :(得分:1)
我通过通过Pip安装而不是通过Pycharm安装软件包来解决了问题,Pyinstaller能够找到该软件包。
通过查看命令提示符中的文本,我得到了这个主意,看到它正在加载通过Pip而非Pycharm安装的模块。
答案 1 :(得分:0)
通过将python库中的以下文件夹/文件包含在我从中运行pyinstaller的同一文件夹中,我可以使用auto-py-to-exe(使用pyinstaller)使此工作正常运行。
pyinstaller命令:
pyinstaller -y -F "[directory]/myscript.py"
我的Windows库位置为:C:\ users [用户名] \ AppData \ Local \ Programs \ Python \ Python37-32 \ Lib
这些软件包位于“ site_packages”文件夹中
答案 2 :(得分:0)
使用 --hiddenimport openpyxl
长期使用以前的解决方案,它对我有用,我能够强制导入 openpyxl。