一、工具:pyinstaller
1、介简:
PyInstaller 是一个在 Windows、GNU/Linux、macOS、FreeBSD、OpenBSD、Solaris 和 AIX 下将 Python 程序冻结(打包)为独立可执行文件的程序。与类似工具相比,它的主要优点是 PyInstaller 与 Python 3.7-3.10 一起工作,由于透明压缩,它构建了更小的可执行文件,它是完全多平台的,并使用操作系统支持加载动态库,从而确保完全兼容。
2、安装:
PyInstaller 是一个普通的 Python 包。可以使用pip安装,例如:
pip install pyinstaller
注:pip 已内置于 Python 3.4 和 2.7 及以上版本,其他版本需另行安装。
二、命令行参数
1、生成
-D, --onedir
创建一个包含可执行文件的单文件夹包(默认)
-F, --onefile
创建一个单一文件捆绑的可执行文件。
--specpath DIR
存放生成的spec文件的文件夹(默认:当前目录)
-n NAME, --name NAME
分配给捆绑的应用程序和规范文件的名称(默认值:第一个脚本的基本名称)[2]
2、Windows 和 Mac OS特定选项
-c, --console, --nowindowed
打开标准 i/o 的控制台窗口(默认)。在 Windows 上,如果第一个脚本是“.pyw”文件,则此选项无效。
-w, --windowed, --noconsole
Windows 和 Mac OS X:不为标准 i/o 提供控制台窗口。在 Mac OS 上,这也会触发构建 Mac OS .app 包。在 Windows 上,如果第一个脚本是“.pyw”文件,则会自动设置此选项。此选项在 UNIX 系统上被忽略。
-i <FILE.ico or FILE.exe,ID or FILE.icns or Image or “NONE”>, --icon <FILE.ico or FILE.exe,ID or FILE.icns or Image or “NONE”>
FILE.ico:将图标应用于 Windows 可执行文件。
FILE.exe,ID:从exe中提取带有ID的图标。
FILE.icns:将图标应用到 Mac OS 上的 .app 包。如果输入的图像文件不是平台格式(Windows 上的 ico,Mac 上的 icns),PyInstaller 会尝试使用 Pillow 将图标转换为正确的格式(如果安装了 Pillow)。
使用“NONE”不应用任何图标,从而使操作系统显示一些默认值(默认值:应用 PyInstaller 的图标)
3、其他参数
-h, --help
显示此帮助信息并退出
-v, --version
显示程序版本信息并退出。
--distpath DIR
捆绑应用程序的放置位置(默认:./dist)
--workpath WORKPATH
将所有临时工作文件、.log、.pyz 等放在哪里(默认:./build)
-y, --noconfirm
替换输出目录(默认:SPECPATH/dist/SPECNAME)而不要求确认
--upx-dir UPX_DIR
UPX 实用程序的路径(默认:搜索执行路径)
-a, --ascii
不包括 unicode 编码支持(默认:如果可用,包括在内)
--clean
在构建之前清理 PyInstaller 缓存并删除临时文件。
--log-level LEVEL
构建时控制台消息中的详细信息量。LEVEL 可以是 TRACE、DEBUG、INFO、WARN、ERROR、CRITICAL 之一(默认值:INFO)。
三、常用命令
1、打包exe
Pyinstaller -F xxx.py
2、不带控制台的打包
Pyinstaller -F -w xxx.py
3、打包指定exe图标打包
Pyinstaller -F -i xx.ico xxx.py
平常我们只需要这三个就好了,足够满足所有需求了。



