最近用python的tkinter写了个小工具,发现用pyinstaller打包成exe后运行出错。报Failed to execute script XXXX
pyinstaller -F -w worksubmit.py

为了搞清楚报错的原因,想看到程序具体执行的情况。可以通过不带-w的参数打包在控制台看程序执行情况。
pyinstaller -F worksubmit.py 可以通过不带-w的参数打包,这时打包的exe运行是带控制台的命令行

可以清楚的看到
ModuleNotFoundError:No module named ‘xlrd’
这时就要解决打包时xlrd模块没有打进去的问题,找到xlrd模块的位置,并将该模块打到运行程序包里。
先找到程序依赖的xlrd模块的位置,在PyCharm中通过"File"->“Setting”,在项目设置里查看Project interpreter,可以看到xlrd的目录位置。

用pyinstall打包的时候通过加-p的参数将依赖的模块打进去。
pyinstaller -F -p

博主用Python的tkinter写小工具,用pyinstaller打包成exe后运行出错。通过不带 -w 参数打包,在控制台看到是缺少xlrd模块。找到该模块位置,用 -p 参数打包将其打进去,解决了运行报错问题。总结可通过控制台定位排查打包exe运行问题。
最低0.47元/天 解锁文章
4万+





