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

 更新时间:2020年06月02日 10:37:37   作者:咯咯哒鸭  
这篇文章主要介绍了解决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图标

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文件啦~

到此这篇关于解决pyinstaller打包运行程序时出现缺少plotly库问题的文章就介绍到这了,更多相关pyinstaller打包运行plotly出错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python检测远程端口是否打开的方法

    python检测远程端口是否打开的方法

    这篇文章主要介绍了python检测远程端口是否打开的方法,实例分析了Python基于socket检测端口的技巧,需要的朋友可以参考下
    2015-03-03
  • Pandas替换NaN值的方法实现

    Pandas替换NaN值的方法实现

    本文主要介绍了Pandas替换NaN值的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • 关于Python中的同步异步阻塞与非阻塞

    关于Python中的同步异步阻塞与非阻塞

    这篇文章主要介绍了关于Python中的同步异步阻塞与非阻塞,具有一定的参考价值,有需要的朋友可以看一下
    2023-03-03
  • python 读取竖线分隔符的文本方法

    python 读取竖线分隔符的文本方法

    今天小编就为大家分享一篇python 读取竖线分隔符的文本方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python 实现 贪吃蛇大作战 代码分享

    Python 实现 贪吃蛇大作战 代码分享

    本文给大家分享的是一个使用cocos2d-python游戏引擎库制作出来的贪吃蛇大作战的游戏代码,基于Python 2.7 和 cocos2d 库,有需要的小伙伴可以参考下
    2016-09-09
  • python之多种方式传递函数方法案例讲解

    python之多种方式传递函数方法案例讲解

    这篇文章主要介绍了python之多种方式传递函数方法案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • python根据unicode判断语言类型实例代码

    python根据unicode判断语言类型实例代码

    这篇文章主要介绍了python根据unicode判断语言类型实例代码,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • MySQL中表的复制以及大型数据表的备份教程

    MySQL中表的复制以及大型数据表的备份教程

    这篇文章主要介绍了MySQL中表的复制以及大型数据表的备份教程,其中大表备份是采用添加触发器增量备份的方法,需要的朋友可以参考下
    2015-11-11
  • PyQt5 PySide2 触摸测试功能的实现代码

    PyQt5 PySide2 触摸测试功能的实现代码

    这篇文章主要介绍了PyQt5 PySide2 触摸测试功能的实现,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • python 实现弹球游戏的示例代码

    python 实现弹球游戏的示例代码

    这篇文章主要介绍了python 实现弹球小游戏,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-11-11

最新评论