解决pyinstaller打包后,运行程序时出现缺少plotly库问题

用pyinstaller打包tkinter程序,打包后运行exe是报如下错误:

搜索一阵发现是pyinstaller在打包的时候(StartRun.py我要打包的主程序文件)可能会漏掉一些三方库,就在打包的时候加上三方库的绝对路径:

pyinstaller StartRun.py -F -p C:\Python36\Lib\site-packages

发现打包完之后还是会报以上问题,继续搜索后用添加hook文件的方式可以解决(彻底解决了我的问题),修改方法:

1.找到C:\Python36\Lib\site-packages\PyInstaller\hooks,长这样:

2.需要在这里新建一个类似的文件hook-plotly.py,文件内容如下:

from PyInstaller.utils.hooks import collect_data_files

datas = collect_data_files('plotly')

3.然后重新打包,打包的时候切记把StartRun.py的同级目录下StartRun.spec文件删除(在打包的时候会自动生成,如果不删除之前不成功的内容还是缓存在的),打包过程中会看到添加了plotly库:

pyinstaller打包常用命令:

-F 指定打包后只生成一个exe格式的文件
-D –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)
-c –console, –nowindowed 使用控制台,无界面(默认)
-w –windowed, –noconsole 使用窗口,无控制台

-i 改变生成程序的icon图标

猜你喜欢

转载自blog.csdn.net/weixin_37830912/article/details/103048512