pyinstaller简介:

PyInstaller与类似工具相比的主要优点是,PyInstaller可以与Python 3.5-3.9一起工作,由于透明压缩,它构建了更小的可执行文件,它是完全多平台的,并使用操作系统支持加载动态库,从而确保了完全的兼容性。

PyInstaller的主要目标是与开箱即用的第三方包兼容。这意味着,使用PyInstaller,使外部包工作所需的所有技巧都已经集成在PyInstaller本身中,因此不需要用户干预。您永远不需要在wiki中寻找技巧并对您的文件或设置脚本应用自定义修改。例如,PyQt、Django或matplotlib等库得到了完全的支持,无需手动处理插件或外部数据文件。查看支持包的兼容性列表以获得详细信息。

安装Pyinstaller

pip install -i https://pypi.douban.com/simple/ pyinstaller #豆瓣源

Pyinstaller打包:

​使用文档​

Pyinstaller -F yourprogram.py 打包exe

Pyinstaller -F -w yourprogram.py 不带控制台的打包

Pyinstaller -F -w -i youriconname.ico yourprogram.py 打包指定exe图标打包

其他参数:

python打包成exe_可执行文件

错误解决

pyinstaller打包时提示UPX is not available.

pyinstaller使用UPX压缩, 所以根据下面的步骤安装了一个UPX就好了:

(1) 到官网 https://upx.github.io/ 下载UPX,下载下来是一个压缩包

(2) 解压得到 upx.exe文件

(3) 把exe文件拷贝到pyinstaller目录下, 我的是 一般位于yourenv\Scripts

然后再重新运行pyinstaller命令就会提示: UPX is available了。


参考:https://blog.csdn.net/chentianveiko/article/details/107083912


qt.qpa plugin: could not find the qt platform plugin “windows” in ……

这个错误是我在把项目环境打包(不是打包成exe,仅仅是打包环境)之后,使用环境中的python启动python脚本(里面用到了pyQt5)的时候出现的。

解决办法:

设置环境变量:

name:  QT_QPA_PLATFORM_PLUGIN_PATH
value: C:\Users\"your own user
name"\AppData\Local\Programs\Python\Python37\Lib\site-
packages\PyQt5\Qt\plugins\platforms

可以在我的电脑->高级系统设置->环境变量里边设置,也可以直接在命令行里边设:

set QT_QPA_PLATFORM_PLUGIN_PATH=yourenv/Lib/site-packages/PyQt5/Qt5/plugins;%QT_QPA_PLATFORM_PLUGIN_PATH%