pyinstaller -F -w -i favicon.ico --clean -n 软件名称 MypythonABC.py
命令参数:
pyinstaller
——命令主程序,含义:调用 Python 的打包工具 PyInstaller,是整条命令的核心开头,所有打包参数都跟在它后面。
-F
——核心打包参数・短参数,含义 / 作用:打包为“单个独立的.exe 可执行文件”,无零散的文件夹和文件;缺点:程序第一次双击运行时会稍慢(系统会在后台解压临时文件),后续运行速度正常。
-w
——GUI程序必加・短参数,含义 / 作用:运行 exe 时,隐藏黑色的 Python 控制台 (cmd) 窗口,是图形界面程序的「标配参数」,不加这个参数的话,软件运行时会弹出黑色命令行窗口,适用所有带窗口的 GUI 程序;如果是纯控制台程序(无窗口,只有黑窗输出文字),必须删除这个参数,否则程序运行后无任何显示。
-i favicon.ico
——指定程序图标・短参数,含义 / 作用:为打包后的.exe 文件本身 设置显示图标,路径规则:favicon.ico和”MypythonABC.py”在同一个文件夹。
–clean
——纯净打包・长参数,含义 / 作用:打包前,自动清空 PyInstaller 的缓存文件 + 临时文件 + 旧打包产物。
-n 软件名称
——自定义软件文件名・短参数,含义 / 作用:指定打包后生成的.exe 文件的名称。
MypythonABC.py
——打包入口文件・无参数标识,含义 / 作用:Python 主程序文件(程序入口),是命令的「核心目标文件」,所有打包逻辑都围绕这个文件展开,文件名不要有中文 / 空格,比如”我的程序.py”要改成”MyProgram.py”,否则打包会报错。
UPX 加壳 + 压缩 + 混淆
——将UPX 的路径添加到了 Windows 系统环境变量,PyInstaller 打包时会自动检测系统中的UPX并静默调用 UPX,无需手动写参数;核心作用:无损压缩 exe 体积(压缩率 30%~60%)且不影响功能;二进制加壳混淆;纯绿色加壳,程序运行无任何异常。
关闭 UPX 的方法:如果程序加壳后闪退,只需在命令里追加 –noupx 即可。
pyinstaller -F -w -i favicon.ico --key=123456abc --clean --noupx -n 软件名称 main_obf.py
