专栏导读
-
🌸 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手
-
-
-
-
📕 此外还有python基础专栏:请点击——>Python基础学习专栏求订阅
-
文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏
-
❤️ 欢迎各位佬关注! ❤️
1. 库的介绍
-
PyInstaller 是一个将 Python 程序打包成独立执行文件的工具,常用于将 Python 脚本打包为可执行文件。以下是一些常见的 PyInstaller 参数及其解释:
2. 基本命令
pyinstaller myscript.py
默认情况下,这条命令会将 myscript.py 文件打包成可执行文件。输出的可执行文件位于 dist 文件夹中。
3. 常见参数
3.1: --onefile
-
将所有内容打包成一个单独的可执行文件。默认情况下,PyInstaller 会生成一个文件夹,其中包含可执行文件和相关的依赖文件。使用此选项后,所有文件会被打包成一个文件。
pyinstaller --onefile myscript.py
3.2: --noconsole
-
在 Windows 上,默认的 Python 程序会有一个命令行窗口。如果你的程序是 GUI 程序,使用这个选项可以避免显示命令行窗口。常用于 PyQt 或 Tkinter 等图形界面程序。
pyinstaller --noconsole myscript.py
3.3: --icon=ICON.ico
-
设置可执行文件的图标。你可以提供一个 .ico 格式的图标文件。这个选项通常用于自定义应用程序的外观。
pyinstaller --icon=myicon.ico myscript.py
3.4: --add-data=SRC;DEST
-
将外部文件或文件夹添加到打包的可执行文件中。SRC 是源文件路径,DEST 是目标路径。多个文件时可以多次使用此选项。
-
在 Windows 上,SRC;DEST 用分号(;)分隔。
-
在 Linux 和 macOS 上,使用冒号(:)分隔。
pyinstaller --add-data="datafile.txt;data" myscript.py
3.5: --hidden-import=module_name
-
用来指定 PyInstaller 在分析程序时,自动忽略的模块。通常,如果你的代码动态导入模块,PyInstaller 可能无法自动检测到这些模块,需要显式地添加。
pyinstaller --hidden-import=my_module myscript.py
3.6: --clean
-
清除上次构建过程中的临时文件,确保从头开始构建。此选项有助于解决一些缓存问题,尤其是在修改代码后打包时。
pyinstaller --clean myscript.py
3.7: --distpath=DIR
-
指定生成的可执行文件所在的目录。默认情况下,PyInstaller 会在当前目录下创建一个 dist 文件夹。
pyinstaller --distpath=output myscript.py
3.8: --workpath=DIR
-
指定 PyInstaller 工作目录的位置,默认情况下,它会生成一个 build 文件夹用于存放中间文件。
pyinstaller --workpath=build myscript.py
3.9: --specpath=DIR
-
用来指定 .spec 文件的存放目录。.spec 文件包含了打包过程的配置信息,通常你可以修改 .spec 文件来定制 PyInstaller 的行为。
pyinstaller --specpath=specs myscript.py
3.10: --no-upx
-
禁用 UPX 压缩,UPX(Ultimate Packer for eXecutables)是一种可执行文件压缩工具,PyInstaller 默认使用它来压缩可执行文件。如果你在某些系统上遇到兼容性问题,可以禁用 UPX 压缩。
pyinstaller --no-upx myscript.py
3.10: --debug
-
开启调试模式,这可以帮助你在打包后的应用程序中看到更多的调试信息,常用于排查问题。
pyinstaller --debug myscript.py
3.10: --clean
-
清除上次打包的临时文件,帮助解决某些缓存问题。用于确保构建从头开始。
pyinstaller --clean myscript.py
4. 使用 .spec 文件
-
PyInstaller 会生成一个 .spec 文件,它记录了打包时的配置,可以修改该文件来定制打包行为。生成 .spec 文件的命令是:
pyinstaller --onefile --noconsole myscript.py
-
此时会生成一个 myscript.spec 文件。你可以编辑该文件来修改打包过程中的一些细节(如添加数据文件、修改图标等)。编辑后,可以用以下命令重新打包:
pyinstaller myscript.spec
5. PyInstaller 常见的输出目录
-
dist/:包含打包后生成的可执行文件。
-
build/:包含中间文件和临时文件。
-
*.spec:配置文件,记录了打包过程中的设定。
6. 其他选项
-
--version-file=VERSION.txt:使用版本文件生成版本信息。可以指定一个包含文件版本、公司名等信息的 .txt 文件。
[Version]
Major=1
Minor=0
Micro=0
Release=0
Build=1001
ProductName=MyApp
FileDescription=My Python Application
CompanyName=YourCompany
LegalCopyright=© 2024 YourCompany. All rights reserved.
FileVersion=1.0.0.1001
ProductVersion=1.0.0
-
--strip:删除不必要的调试符号,减小可执行文件大小。
-
这些是 PyInstaller 的一些常见参数,了解它们可以帮助你更灵活地打包 Python 程序。
总结
-
希望对初学者有帮助
-
致力于办公自动化的小小程序员一枚
-
希望能得到大家的【一个免费关注】!感谢
-
求个 🤞 关注 🤞
-
-
求个 ❤️ 喜欢 ❤️
-
-
求个 👍 收藏 👍
-