欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

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

时间:2021-05-18 09:48:24|栏目:Python代码|点击:

用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 ?Conedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)
-c ?Cconsole, ?Cnowindowed 使用控制台,无界面(默认)
-w ?Cwindowed, ?Cnoconsole 使用窗口,无控制台

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

pyinstaller打包plotly后无法正常运行的问题

在使用pyinstaller打包带有plotly的程序后,在运行程序时会出现如下反馈

"c:\users*\appdata\local\continuum\anaconda3\envs\py34\lib\site-p ackages\PyInstaller\loader\pyimod03_importers.py", line 474, in get_data
with open(path, 'rb') as fp:
FileNotFoundError: [Errno 2] No such file or directory:
 'H:\Python\Commodity_M AI_Trade_List\Code\dist\comdty_runtime\plotly\package_data\default-schema. json'
 Failed to execute script comdty_runtime

这是由于pyinstaller现在还无法兼容plotly的原因所造成的,解决方法如下:
1.在打包时不要选择使用-F打包成单个文件
2.在打包完后,从anaconda目录下复制plotly文件夹(作者的位置是E:Anaconda3\Lib\site-packages\plotly)到打包完成的文件夹中(作者的位置是D:\Anaconda Library\XXXX项目\dist{exe名字文件夹}\)。

复制完成后,就可以顺利使用exe文件啦~

上一篇:python设计tcp数据包协议类的例子

栏    目:Python代码

下一篇:详解Python中的编码问题(encoding与decode、str与bytes)

本文标题:解决pyinstaller打包运行程序时出现缺少plotly库问题

本文地址:http://www.codeinn.net/misctech/124099.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有