通过前面几个章节的文章,我们学会了通过PySide2去编写一个简单的GUI页面测试小工具:

Python GUI编程:PySide2介绍

Python GUI编程:如何运行第一个PySide2的窗体程序

Python GUI编程:PySide2页面设计优化

Python GUI编程:PySide2通过加载页面设计文件的方式运行

Python GUI编程:通过PySide2实现一个简单的postman工具

接下来,看一下怎么样将编写好的脚本,打包成一个双击可以运行的exe文件:这里需要用到python的一个插件pyinstaller。

可以先检查一下自己电脑有没有安装这个插件:

pip show pyinstaller

如果没有安装的话,可以使用下面的命令进行安装:

pip install pyinstaller

表 1 PyInstaller 支持的常用选项

-h,--help

查看该模块的帮助信息

-F,-onefile

产生单个的可执行文件

-D,--onedir

产生一个目录(包含多个文件)作为可执行程序

-a,--ascii

不包含 Unicode 字符集支持

-d,--debug

产生 debug 版本的可执行文件

-w,--windowed,--noconsolc

指定程序运行时不显示命令行窗口(仅对 Windows 有效)

-c,--nowindowed,--console

指定使用命令行窗口运行程序(仅对 Windows 有效)

-o DIR,--out=DIR

指定 spec 文件的生成目录。如果没有指定,则默认使用当前目录来生成 spec 文件

-p DIR,--path=DIR

设置 Python 导入模块的路径(和设置 PYTHONPATH 环境变量的作用相似)。也可使用路径分隔符(Windows 使用分号,Linux 使用冒号)来分隔多个路径

  --distpath DIR

指定exe文件生成的目录,默认是./dist ,及当前目录下的dist文件夹

-n NAME,--name=NAME‍

指定项目(产生的 spec)名字。如果省略该选项,那么第一个脚本的主文件名将作为 spec 的名字

在表 1 中列出的只是 PyInstaller 模块所支持的常用选项,如果需要了解 PyInstaller 选项的详细信息,则可通过 pyinstaller -h 来查看。

可以使用下面的命令进行打包:

pyinstaller -F -w --distpath . rungui.py

执行上面的命令后,即可打包成exe文件,正常情况下双击即可运行。

可能会遇到的问题:

1、由于代码中加载.ui的页面设计文件用的相对路径,导致打包的时候,没有将ui文件一起打包进去,此时双击exe就会报错:

Python GUI编程:将自己写的postman打包成exe可执行文件_PySide2

解决办法:

将ui文件、图标文件等和exe文件放在同一个目录后,再双击执行,就不会有这个问题。

感兴趣的,也可以尝试将ui文件放到python安装目录的某个位置,然后代码中读取文件的位置改一下 ,估计不会报错。

控件的其他学习资料,可以参考以下网址:

​http://www.byhy.net/tut/py/gui/qt_01/​

感兴趣的,可以再研究一下,在postman工具中调用百度网址发送请求的时候,如何优化响应结果显示,以及当返回结果很大,或者响应很慢时,如果避免exe程序直接卡死的情况:

Python GUI编程:将自己写的postman打包成exe可执行文件_PySide2_02