原因

原因主要是anaconda问题,大量的依赖包导致打包速度极慢。网上说的把import改成from import是错误的。 关键点是换个纯净的系统编译

解决

安装python

VMware中新建一个虚拟机,我用的是win7,使用python官方提供的安装包. 如果网速慢,就用廖雪峰老师提供的百度网盘链接.

pyinstaller打包很慢 的原因 正确解决方法

安装的时候勾选"Add Python 3.7 to PATH"

这是第一个注意点: 需要一个纯净的环境,不要用anaconda.

安装pyinstaller

接着可以使用pip install pyinstaller这条命令安装它.

生成exe

安装完成后,就可以执行pyinstaller -F 文件名.py来生成exe了.

解决缺包

生成完成后,需要在cmd命令提示符中执行它,这样才能看到缺少什么模块.

我这里缺少了easygui和pandas库,在实际运行的时候,发现还需要openpyxl库,所以需要安装他们.

pip install easygui
pip install pandas
pip install openpyxl

可以加-i参数从国内下载.例如:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas,这样就会从清华这边的镜像去安装pandas库。

再次生成

再次执行pyinstaller -F 文件名.py就压缩到了30M了,并且速度非常快。


参考:
【tkinter】python工具pyinstaller打包生成exe文件非常大的原因分析(openpyxl)openpyxl