利用pyinstaller把python程序打包成exe文件

步骤一:

下载安装与自己python版本一致的pyinstaller
python3.7版本的下载地址

步骤二:

将pyinstaller文件拷贝到python的根目录下(不具体展示,因为每个人的python根目录不同)。

步骤三:

在cmd中进入pyinstaller文件夹下,使用python setup.py build和
python setup.py install命令安装pyinstaller库,等待安装完成,当出现Finished processing dependencies for PyInstaller==4.0.dev0+a1f92c6a08即表示安装成功。

步骤四:

使用pip show pyinstaller查看安装的pyinstaller信息。

步骤五:

使用pyinstaller打包python程序,打包命令:pyinstaller -F new_members.py,最后面显示successfully表示打包成功。

步骤六:

打开你的python根目录下有一个dist文件夹,打开后就可以看到一个打包好的exe文件。

下面是我在运行exe程序时遇到的问题及解决方法,供大家参考

问题一:ModuleNotFoundError:No module named typedefs之类的问题

在打包之后 当前目录下有个xx.spec文件。在里面将
hiddenimports=[]
修改为:
hiddenimports=[‘cython’,‘sklearn’,‘sklearn.neighbors.typedefs’,‘scipy._lib.messagestream’](即提示缺什么模块,就把该模块给加到这里面)
在python根目录的Scripts目录下运行以下命令
pyinstaller xx.spec
然后再在dist目录下重新运行exe程序就可以了。

问题二:DistributionNotFound

这个问题主要是缺少对应的hook文件导致的,找到你pyinstaller的安装目录,进入hooks文件夹,创建类似于hook-xxx.py文件xxx为你的报错缺少的模块,打开加入一下代码:
from PyInstaller.utils.hooks import copy_metadata
datas = copy_metadata(‘xxx’)
然后重新执行:
pyinstaller -D xxx.py

问题三: 缺少dll的问题

直接在的python或者anaconda环境里搜索你缺少的dll文件名字,直接拖到你的exe文件夹下即可。

问题四:缺少资源或者资源加载出错

把缺少的或者加载出错的资源直接复制到dist目录下即可。
希望以上内容可以对大家有所帮助,使大家少走弯路,如果还有其他问题,欢迎留言,我们一起讨论!

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

护国战神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值