[python] 2025-05-16 圈点479
摘要:pyinstaller命令参数解析
pyinstaller命令参数解析
pyinstaller命令格式
pyinstaller[ 选项 ] 脚本 [ 脚本 …] | 规格文件
常规选项
-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)之一。
-D, --onedir 创建一个包含可执行文件的单文件夹捆绑包(默认)
-F, --onefile 创建一个文件捆绑可执行文件。
--specpath DIR 用于存储生成的规范文件的文件夹(默认:当前目录)
-n NAME, --name NAME
分配给捆绑的应用程序和规范文件的名称(默认值:第一个脚本的基本名称)
--add-data <SRC;DEST or SRC:DEST>
要添加到可执行文件中的其他非二进制文件或文件夹。路径分隔符是特定于平台的os.pathsep(;在Windows和:大多数Unix系统上使用)。此选项可以多次使用。
--add-binary <SRC;DEST or SRC:DEST>
要添加到可执行文件的其他二进制文件。请参阅该--add-data选项以获取更多详细信息。此选项可以多次使用。
-p DIR, --paths DIR
搜索导入的路径(例如使用PYTHONPATH)。允许使用多个路径,以“:”分隔,或多次使用此选项
--hidden-import MODULENAME, --hiddenimport MODULENAME
命名在脚本代码中不可见的导入。此选项可以多次使用。
--additional-hooks-dir HOOKSPATH
搜索钩子的其他路径。此选项可以多次使用。
--runtime-hook RUNTIME_HOOKS
定制运行时挂钩文件的路径。运行时挂钩是与可执行文件捆绑在一起的代码,该代码在执行任何其他代码或模块之前执行以设置运行时环境的特殊功能。此选项可以多次使用。
--exclude-module EXCLUDES
可选模块或包(Python名称,而不是路径名),将被忽略(好像未找到)。此选项可以多次使用。
--key KEY 用于加密Python字节码的密钥。
-d <all,imports,bootloader,noarchive>, --debug <all,imports,bootloader,noarchive>
提供调试冻结应用程序的帮助。可以多次提供此参数以选择以下几个选项。
all:以下三个选项。
imports:指定基础Python解释器的-v选项,使该模块在每次模块初始化时打印一条消息,显示加载该文件的位置(文件名或内置模块)。参见 https://docs.python.org/3/using/cmdline.html#id4。
引导程序:告诉引导程序在初始化和启动捆绑的应用程序时发出进度消息。用于诊断缺少进口的问题。
noarchive:不要将所有冻结的Python源文件作为档案存储在生成的可执行文件中,而应将它们作为文件存储在生成的输出目录中。
-s, --strip 将符号表条应用于可执行文件和共享库(对于Windows不建议)
--noupx 即使可用,也不要使用UPX(Windows和* nix之间的工作方式不同)
--upx-exclude FILE
防止在使用upx时压缩二进制文件。如果upx在压缩过程中破坏了某些二进制文件,通常使用此方法。FILE是没有路径的二进制文件名。此选项可以多次使用。
Windows和Mac OS X特定选项
-c, --console, --nowindowed
打开用于标准I / O的控制台窗口(默认)。在Windows上,如果第一个脚本是“ .pyw”文件,则此选项无效。
-w, --windowed, --noconsole
Windows和Mac OS X:不提供标准I / O的控制台窗口。在Mac OS X上,这也会触发构建OS X .app捆绑软件。在Windows上,如果第一个脚本是“ .pyw”文件,则将设置此选项。在* NIX系统中,此选项被忽略。
-i <FILE.ico or FILE.exe,ID or FILE.icns>, --icon <FILE.ico or FILE.exe,ID or FILE.icns>
FILE.ico:将该图标应用于Windows可执行文件。FILE.exe,ID,从exe中提取具有ID的图标。FILE.icns:将图标应用于Mac OS X上的.app捆绑包
Windows特定选项
--version-file FILE
从FILE向exe添加版本资源
-m <FILE or XML>, --manifest <FILE or XML>
将清单文件或XML添加到exe
-r RESOURCE, --resource RESOURCE
向Windows可执行文件添加或更新资源。资源是一到四个项目,FILE [,TYPE [,NAME [,LANGUAGE]]]。FILE可以是数据文件或exe / dll。对于数据文件,至少必须指定TYPE和NAME。LANGUAGE默认为0,或者可以指定为通配符*,以更新给定TYPE和NAME的所有资源。对于exe / dll文件,如果省略TYPE,NAME和LANGUAGE或将其指定为通配符*,则FILE中的所有资源都将添加/更新为最终可执行文件。此选项可以多次使用。
--uac-admin 使用此选项将创建一个清单,它将在应用程序重新启动时请求提升。
--uac-uiaccess 使用此选项可以使提升的应用程序与远程桌面一起使用。
Windows并排程序集搜索选项(高级)
--win-private-assemblies
捆绑到应用程序中的任何共享程序集都将更改为私有程序集。这意味着将始终使用这些程序集的确切版本,并且将忽略在系统级别在用户计算机上安装的所有较新版本。
--win-no-prefer-redirects
在搜索共享或专用程序集以捆绑到应用程序中时,PyInstaller宁愿不遵循重定向到较新版本的策略,而是尝试捆绑程序集的确切版本。