图标转换地址:https://convert.app/#google_vignette
官方文档:https://readthedocs.org/projects/pyinstaller/downloads/pdf/stable/#page20
安装pyinstaller
pip install pyinstaller
执行打包
pyinstaller -i ./resource/w.icns -w -F whv.py --add-data "./data/account.json:./data/" --add-data "./extension/captcha.zip:./extension/" --target-arch=x86_64
常用到的参数

- -onefile或- F:将所有程序打包成单个可执行文件。
- -onedir或- D:将所有程序打包成一个目录,但不生成单个可执行文件。
- -icon=图标文件:将图标文件作为程序图标。
- -name=可执行文件名:指定可执行文件名。
- -specpath=输出目录:生成.spec文件(PyInstaller的配置文件)的存储路径。
- -clean:清理PyInstaller在打包过程中产生的临时文件。
- -hidden-import=模块名:指定import但未被PyInstaller检测到的模块。
- -debug=all:按照详细程度指定调试等级。
- -windowed:指定程序不为控制台模式。
- -upx-dir=UPX路径:指定UPX可执行文件的路径,用于压缩可执行文件。
- -upx-exclude=UPX排除模板:指定UPX排除的文件类型。
- -upx-compress-level=压缩级别:指定UPX的压缩级别。
- -exclude-module=模块名:排除不需要打包的模块。
- -additional-hooks-dir=钩子目录:指定钩子文件所在目录。
- -runtime-hook=运行时钩子:指定运行时钩子文件。
- -collect-submodules=深入收集子模块:收集子模块。
- -version-file=版本文件:指定版本文件。
- -add-data=“源文件;目标地址”:指定打包时需要添加的附加文件,可以使用通配符。
- -add-binary=“源文件;目标地址”:与- -add-data类似,但是它可以将源文件编译成二进制文件。
注意事项
- 不同的平台得用不同的平台打包,比如mac arm64架构的得用mac arm64架构的平台打包,Windows得用Windows的平台打包