pyinstaller打包pyqt5项目总结

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、先安装pyinstaller
  • 二、修改生成的.spec文件并打包
    • 1.生成.spec文件
    • 2.修改生成的.spec文件
    • 3.程序运行弹出console
  • 总结


前言

最近做项目需要做一个界面,但因为某些原因不能使用QT,所以安装了PyQt5,做完之后想把项目打包成exe程序,上网查了很多教程,都不是我想要的,问题解决之后记录一下。

一、先安装pyinstaller

pyinstaller是一个非常简单的打包python的py文件的库。

 pip install pyinstaller

二、修改生成的.spec文件并打包

1.生成.spec文件

我的项目的目录层级如下:

pyinstaller打包pyqt5项目总结_第1张图片

cmd命令行执行命令如下:

pyinstaller main.py

pyinstaller打包pyqt5项目总结_第2张图片

build和dist:为命令生成目录,一开始并不存在

main.spec:同样为命令生成文件,一开始并不存在 

2.修改生成的.spec文件

生成之后默认的spec文件如图所示

pyinstaller打包pyqt5项目总结_第3张图片

需对Analysi进行修改,将其他的py文件以list的形式添加进main.py之后,如图所示:

pyinstaller打包pyqt5项目总结_第4张图片

修改完保存之后,命令行执行命令,如图所示:

pyinstaller main.spec

pyinstaller打包pyqt5项目总结_第5张图片

在生成的两个文件夹的dist文件夹中,会发现可执行文件main.exe

pyinstaller打包pyqt5项目总结_第6张图片

双击main.exe,如果程序正确执行,那就没问题啦。如果程序运行报错,需要打开调试窗口自行定位问题,我的程序运行的时候是报错,我猜测可能是找不到资源文件,所有我将资源文件夹resource整个拷贝过来,双击运行之后就正常了

3.程序运行弹出console

若不想程序运行时弹出黑窗口,则可将如图所示的console=True改成console=False,重新在命令行执行:pyinstaller main.spec即可。重新执行之后会选择是否remove旧的dist目录,移除之后需重新拷贝资源文件至目标文件夹

pyinstaller打包pyqt5项目总结_第7张图片


总结

1.先安装pyinstaller;

2.命令行执行pyinstaller main.py生成.spec文件并修改之;

3.修改之后命令行执行pyinstaller main.spec生成可执行文件;

4.若程序执行报错可打开console开关进行定位问题;

5.若程序中使用到了资源文件记得拷贝至相应路径下。

你可能感兴趣的:(python,开发语言)