福州营销网站建设团队,二级网站建设要求,wordpress 链接扁平化,免费建网站系统平台首先使用pyinstaller生成spec文件#xff0c;然后配置spec文件重新打包
pyinstaller -D app.py
pyinstaller参数
-F #xff1a;打包单个文件
-D #xff1a;打包多个文件#xff0c;在dist中生成很多依赖文件
-c:使用控制台执行#xff0c;只对windows有效
-n : 生…首先使用pyinstaller生成spec文件然后配置spec文件重新打包
pyinstaller -D app.py
pyinstaller参数
-F 打包单个文件
-D 打包多个文件在dist中生成很多依赖文件
-c:使用控制台执行只对windows有效
-n : 生成spec文件的名字和exe名字
-p : 设置导入路径
-key : 用于加密python字节码的密钥
--add-data 可以将一些非二进制文件添加到exe打包
--dispath 指定打包后程序的存放目录
--workpath 输出所有临时文件存放目录默认存放在build目录
# -*- mode: python ; coding: utf-8 -*-block_cipherNone
py_files[game.py] #所有的python脚本文件
add_files[
(resources\\fonts\\MONACO.TTF,resources\\fonts),
(resources\\images\\game_over.gif,resources\\images)
]a Analysis(py_files, #此列表存放项目设计所有python脚本文件pathex[E:\Desktop\Games-master\Tetris],#此列表为项目绝对路径binaries[],datasadd_files, #此列表存放所有资源文件每个文件都是一个二元组元素hiddenimports[],hookspath[],hooksconfig{},runtime_hooks[],excludes[],cipherblock_cipher,noarchiveFalse,)
pyz PYZ(a.pure)exe EXE(pyz,a.scripts,[],exclude_binariesTrue,namegame,debugFalse,bootloader_ignore_signalsFalse,stripFalse,upxTrue,consoleTrue,disable_windowed_tracebackFalse,argv_emulationFalse,target_archNone,codesign_identityNone,entitlements_fileNone,
)
coll COLLECT(exe,a.binaries,a.datas,stripFalse,upxTrue,upx_exclude[],namegame,
)
spec配置说明
a: Analysis类的实例传入各种脚本来分析程序的导入和依赖。a中的内容包括四部分scripts,python脚本pure,程序代码文件中的纯Python模块binaries,程序代码文件中需要的非python模块datas非二进制文件
pyz: 包含所有的python模块
exe:用来生成最后的exe可执行程序
coll: COLLECT类的实例用于创建输出目录。-F模式下没有COLLECT所有的脚本、模块
二进制文件都包含在最终生成的exe文件中
block_cipher: 加密密钥 Analysis参数说明
scripts一个包含要打包的 Python 脚本文件路径的列表。这些脚本文件将被分析并打包到最终的可执行文件中。pathex一个包含要搜索脚本文件的路径列表。PyInstaller 将在这些路径中查找脚本文件及其依赖项。binaries一个包含要包含在可执行文件中的二进制文件路径的列表。这些二进制文件可以是共享库、插件或其他依赖项。datas一个包含要包含在可执行文件中的非 Python 文件路径的列表。这些文件可以是数据文件、配置文件或其他资源文件。hiddenimports一个包含要隐式导入的模块名列表。这些模块可能不会被 PyInstaller 自动检测到但它们对于程序的正常运行可能是必需的。hookspath一个包含自定义钩子脚本路径的列表。钩子脚本用于处理特定的包或模块以便正确地打包它们。runtime_hooks一个包含运行时钩子路径的列表。运行时钩子用于在程序运行时执行特定的操作例如加载插件或初始化资源。excludes一个包含要从打包过程中排除的模块名列表。这些模块将不会被包含在最终的可执行文件中。win_no_prefer_redirects一个布尔值指示是否避免使用 Windows 文件重定向。如果设置为 True则 PyInstaller 将尝试直接访问文件而不是通过重定向来访问它们。win_private_assemblies一个布尔值指示是否将程序集作为私有副本包含在可执行文件中。如果设置为 True则每个可执行文件都将包含其依赖项的一个私有副本以避免与其他程序的冲突。cipher一个用于加密 Python 字节码的密钥。如果提供了密钥则 PyInstaller 将使用它来加密打包的 Python 脚本以增加安全性。noarchive一个布尔值指示是否将 Python 字节码嵌入到可执行文件中。如果设置为 False则 PyInstaller 将创建一个单独的存档文件来存储字节码并在运行时加载它。这可以减少可执行文件的大小但会增加启动时间。
参考
pyinstaller系列之七打包各种问题汇总_pyinstaller hidden import not found-CSDN博客
【python第三方库】pyinstaller使用教程及spec资源文件介绍_--hidden-import-CSDN博客
Pyinstaller的Spec文件用法_pyinstaller spec-CSDN博客