猫头虎 分享:Python库 PyInstaller 的简介、安装、用法详解入门教程 今天猫头虎带您了解,如何使用 PyInstaller 将 Python 脚本打包为独立的可执行文件。...支持多种高级功能,如图标设置、UPX 压缩。 适用场景 需要将 Python 程序分发给没有 Python 环境的用户。 打包 GUI 应用程序(如使用 PyQt、Tkinter)。...PyInstaller 的安装 ⚙️ 安装步骤 Step 1: 安装 PyInstaller 在终端中运行以下命令: pip install pyinstaller 温馨提示:确保您的 pip 已更新到最新版本...命令如下: pyinstaller --onefile --icon=myicon.ico hello.py 隐藏控制台窗口 如果是 GUI 程序(如 Tkinter),可以使用以下命令隐藏控制台:...原因: PyInstaller 将所有依赖打包进了可执行文件。 解决: 使用 UPX 压缩工具。
,无窗口(默认) -w -Windowed,-noconsole,使用窗口,无控制台 Pyinstaller在pycharm的支持配置 name:Pyinstaller EXE(可自定义) Program...在打包过程中总是出现这一句,经查,是pyinstaller支持压缩,使用UPX压缩,官方地址https://upx.github.io/ 居然没有windows64位,32位拉来试试吧。...使用很简单,把获取的upx.exe放在pyinstaller目录下就可以了。 再次尝试打包: INFO: UPX is available....看来UPX压缩已经激活了 将库文件单独存放在目录中 可以通过如下方法,把这些库文件放到 单独的一个 目录中。 这样.exe所在的目录就显得比较清爽了,也好找到.exe文件了。...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
深度解析 2.1 基础打包流程 PyInstaller是目前最流行的Python打包工具,其基本使用流程如下: # 安装PyInstaller pip install pyinstaller # 基本打包命令...数据文件打包:处理程序依赖的非Python文件 # 方法1:通过命令行参数 pyinstaller --add-data "data/*.json;data" app.py # 方法2:在spec文件中配置...UPX压缩:减小生成文件体积 # 下载UPX并配置路径 pyinstaller --upx-dir=/path/to/upx app.py 三、跨平台打包解决方案 3.1 Windows平台特殊处理...排除不必要的包 --exclude-module matplotlib 启用UPX压缩 4.2 常见问题解决 问题1:打包后程序启动慢 方案:使用--runtime-tmpdir指定临时目录...反逆向工程:结合Nuitka编译关键模块 依赖审计:检查第三方库安全性 七、未来发展趋势 WebAssembly支持:通过Pyodide等工具在浏览器中运行 更小的运行时:如Python
示例 2:打包含有外部库依赖的项目 对于使用了外部库(如 requests)的项目,PyInstaller 也能够自动检测并包含这些依赖。...这是因为所有的依赖都被打包到了一个文件中,程序在启动时需要解压这些内容。 解决方案:使用 --onedir(默认选项)而不是 --onefile,这样可以让程序快速启动,因为依赖项保持解压状态。...解决方案:你可以在 spec 文件中手动添加这些缺失的模块。...此外,使用 UPX 压缩工具可以减小最终可执行文件的大小。...首先需要下载并安装 UPX,然后在 PyInstaller 命令中添加 --upx-dir 参数: pyinstaller --onefile --upx-dir=/path/to/upx your_script.py
(如--exclude-module matplotlib)3....解决:对于GUI程序,确保使用--windowed参数(PyInstaller)或base="Win32GUI"(cx_Freeze) 临时去掉--windowed参数查看错误信息在代码中添加异常捕获:...= resource_path("config.json")cx_Freeze解决方案: 确保在include_files中包含了所有资源文件,并使用sys....排除不需要的模块:pyinstaller --onefile --exclude-module matplotlib app.py使用UPX压缩(需先下载UPX):pyinstaller --onefile...--upx-dir=path/to/upx app.py4.
1、安装PyInstaller 首先需要下载PyInstaller和UPX,UPX是用来压缩exe的,点击超链接下载吧,目前稳定版本是1.3,注意选择你使用的操作系统。...如在Windows下,将下载解压后的upx.exe放到PyInstaller解压后的文件夹内。 设PyInstaller的文件夹为D:\PyInstaller,下同。...Unicode available I: testing for UPX... I: ...UPX available I: computing PYZ dependencies......Py代码放在一个目录中(默认是这个) -K, --tk 包含TCL/TK -d, --debug 生成debug模式的exe文件 -w, --windowed, --noconsole 窗体exe...文件(Windows Only) -c, --nowindowed, --console 控制台exe文件(Windows Only) -X, --upx 使用upx压缩exe文件 -o DIR,
错误原因 由于 pyinstaller 打包使用的是 UPX,打包时没找到这个应用,导致的报错! 3....解决办法一 访问 UPX 官网下载:https://upx.github.io,【我使用的是Window 64版本】,所以下载的是win64的压缩包!...解压压缩包,获取upx.exe 将 upx.exe 复制到 pyinstaller 安装目录下。...【我的pyinstaller安装目录:D:\Python\Scripts】 最后再次执行打包命令 pyinstaller -F app.py 4....解决办法二 【卸载pyinstaller】 pip uninstall pyinstaller 【重新安装pyinstaller】 pip install pyinstaller 5.
PyInstaller....','upx393w'] run(opts) 四丶pots参数 -F 制作独立的可执行程序 -D 制作出的档案存放在同一个文件夹下(默认值) -K 包含TCL/TK(对于使用了...TK的,最好加上这个选项,否则在未安装TK的电脑上无法运行) -w 制作窗口程序 -c 制作命令行程序(默认) -X 制作使用UPX压缩过的可执行程序(推荐使用这个选项,...需要下载UPX包,解压后upx.exe放在Python(非PyInstaller)安装目录下,下载upx308w.zip) -o DIR 指定输出SPEC文件路径(这也决定了最后输出的exe文件路径)...使用upx压缩 upx393w upx版本 详情参考文档:https://pyinstaller.readthedocs.io/en/stable/usage.html 发布者:全栈程序员栈长
在业务场景中, 经常需要Python开发一些小程序/脚本/GUI界面,交付给一些小白或未安装Python 的小伙伴们使用。...噔噔蹬蹬 pyinstaller 闪亮登场 场景说明 使用Pyinstaller将Python脚本或者项目打包,生成可执行的.exe文件。...除了Pyinstaller, 还可以使用py2exe进行打包 pyinstaller安装 pip install pyinstaller 打包参数 # 常用打包参数 # -F -D互斥参数 -F 打包成一个...exe文件,小项目可以采用,打开比较慢,多个.py打包时不能使用 -D 默认参数,打包结果放入到创建的文件夹中,可以看到里面有很多的依赖文件 # -w -c互斥参数 -w 使用项目的GUI界面,无...静态资源、建好的Sqlite数据库可以直接放入dist中 生成的文件夹中 说明 Pyinstaller只是将Python解释器和脚本打包成一个可执行文件, 不同于编译成真正的机器码。
UPX压缩目录 --upx-dir=/opt/upx --key 字节码加密密钥 --key 256bit-secret 第三部分:专业级配置技巧 ▶ 规范文件(.spec)深度定制 # myscript.spec...'models/*.pt', 'models')] # 排除大型库 excludes = ['matplotlib', 'scipy.sparse.csgraph'] ▶ 案例3:加密商业应用 # 使用..." # 应无输出 第五部分:性能优化与体积控制 ▶ 体积缩减技巧 # 使用UPX压缩(节省40%空间) pip install upx pyinstaller --upx-dir ~/.local/bin...--debug all查看日志 模块未找到 动态导入 添加--hidden-import 资源加载失败 路径错误 使用sys....的未来发展 随着Python生态演进,PyInstaller正迎来重要升级: WebAssembly支持:实验性支持Pyodide打包 Tree Shaking:智能移除未使用代码 增量更新
这里我们介绍如何使用pyinstaller去通过python源码构造一个可执行文件。...pyinstaller的安装 我们还是正常的使用pip来进行python包的管理即可: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 [dechin...如果觉得这份官方的帮助文档过于冗余,可以参考下一个章节中的缩略版帮助文档。...执行成功编译构建的方法之后,会在本地产生一些编译的路径,如build和dist等,完整的路径和文件清单如下所示: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18...那么最后还缺一步,就是我们如果想要通过项目名 -参数表示 参数这样的方法来运行我们的项目的话,就需要把这个可执行文件添加到系统路径中。
这里我们介绍如何使用pyinstaller去通过python源码构造一个可执行文件。...pyinstaller的安装 我们还是正常的使用pip来进行python包的管理即可: [dechin@dechin-manjaro installer]$ python3 -m pip install...如果觉得这份官方的帮助文档过于冗余,可以参考下一个章节中的缩略版帮助文档。...了解了基本的使用方法之后,可以针对我们上述编写的pye.py的项目进行编译构建: [dechin@dechin-manjaro installer]$ pyinstaller -F pye.py --clean...执行成功编译构建的方法之后,会在本地产生一些编译的路径,如build和dist等,完整的路径和文件清单如下所示: [dechin@dechin-manjaro installer]$ tree . ├─
1、下载地址:http://www.pyinstaller.org/ 。 2、解压即用(V2.1)。注意环境变量,或者用pyinstaller.py的全路径,或者到解压目录下使用。...pip3 install pyinstaller 2、打包命令示例: pyinstaller --onefile yourprogram.py 另外两个常用的参数: (1)、添加图标 -i walker.ico... //添加图标 (2)、压缩可执行文件(upx) --upx-dir UPX_DIR //指定压缩程序(upx.exe)目录,默认当前目录 FAQ: Q1、ImportError: DLL...A2、在main函数中添加multiprocessing.freeze_support()语句,参考这里。...Q5、python 3.6,pyinstaller 3.3.1,pywinauto 0.6.4 打包问题可以参考:PyInstaller 3.3.1 does not work with Pywinauto
常见的应用场景包括: • 给非技术人员使用的小工具 • 需要保密的商业软件 • 方便分发的应用程序 二、5种Python打包方案对比 三、详细打包教程 方法1:PyInstaller(推荐) # 安装...使用UPX压缩: pyinstaller -F -w --upx-dir=upx路径 code-summar-tool.py 排除不必要的包: # 在PyInstaller中 --exclude-module...打包时添加-i参数: pyinstaller -i app.ico -F code-summar-tool.py Q3:杀毒软件误报怎么办? 1. 使用代码签名证书 2....在PyInstaller中添加加密: pyinstaller --key=yourpassword -F code-summar-tool.py 五、总结建议 • 新手推荐:使用PyInstaller或...auto-py-to-exe • 跨平台需求:选择PyInstaller或cx_Freeze • 性能要求高:使用Nuitka编译 • 仅Windows使用:可以考虑Py2exe 你在打包Python程序时遇到过什么问题
于是,将目光转向了PyInstaller,它可以同时支持Windows和Macos,并且使用方法差异也很小。...打包出来的程序在运行后会创建一个临时目录,把dll等文件解压到临时目录中;py2exe使用了内存加载dll的技术,可以在不解压dll的情况下直接加载,看上去更优雅一些 0x01 环境准备 测试过程使用了...UPX_DIR] [-a] [--clean] [--log-level LEVEL] scriptname [scriptname ...] pyinstaller...--add-data=src;dst(Windows)或--add-data=src:ds(类Unix)参数将src路径对应的文件(夹)拷贝到dst指向的路径,程序中可以使用dst路径进行访问。...由于PyInstaller打包出来的程序在运行时会解压数据文件到临时目录中,因此程序中可以直接访问这些数据文件;而py2exe则需要手动将数据文件从程序体中解压出来使用。
1、进入命令提示符环境cmd,执行命令pip install pyinstaller安装扩展库pyinstaller。...3、把Python程序打包为单个exe文件:假设该程序tkinter_DigitalWatch.pyw存放于C:\Python36文件夹中,进入命令提示符环境,执行命令下面的命令: ?...2)使用upx.exe压缩文件。首先打开网站https://upx.github.io/下载对应的upx.exe文件,这里以Windows操作系统为例,如图: ?...下载后解压缩,把其中的upx.exe文件放到Python安装目录的scripts子文件夹中: ? 然后进入命令提示符,执行下面的命令打包: ? 生成的exe文件如下,可以发现压缩比并不是很高: ?...4、把Python程序打包为多个文件:在使用pyinstaller打包时,不加-F参数即可打包为多个文件,这时生成的exe文件是主程序,同时还会生成一些依赖文件,如图: ?
安装PyInstaller pip3 install pyinstaller D:\pythonProject\build_excutable>pip3 install pyinstaller Collecting...--version 版本 D:\pythonProject\build_excutable>pyinstaller --version 3.4 使用PyInstaller 首先查看一下help D:\...UPX_DIR] [-a] [--clean] [--log-level LEVEL] scriptname [scriptname ...]...UPX_DIR Path to UPX utility (default: search the execution path) -a, -...D:\pythonProject\build_excutable> 你会发现dist下面只有一个可执行文件,这个单文件就可以发布了,可以运行在你正在使用的操作系统类似的系统的下面。 ?
1、使用pip install Pyinstaller 命令安装 2、使用命令 pyinstaller -F *.py打包成exe 3、在\dist文件夹下找到exe; 一、pyinstaller相关参数...,–console 使用控制台子系统执行(默认)(只对Windows有效) pyinstaller -c xxxx.py pyinstaller xxxx.py --console -s,–strip...-X, –upx 如果有UPX安装(执行Configure.py时检测),会压缩执行文件(Windows系统中的DLL也会)(参见note) -o DIR, –out=DIR 指定spec文件的生成目录...,如果没有指定,而且当前目录是PyInstaller的根目录,会自动创建一个用于输出(spec和生成的可执行文件)的目录.如果没有指定,而当前目录不是PyInstaller的根目录,则会输出到当前的目录下...-p DIR, –path=DIR 设置导入路径(和使用PYTHONPATH效果相似).可以用路径分割符(Windows使用分号,Linux使用冒号)分割,指定多个目录.也可以使用多个-p参数来设置多个导入路径
环境准备 upx:压缩安装包的大小 https://github.com/upx/upx 下载后放在 D:\path\Anaconda3\envs\\Scripts\ 打包的时候会看到...: 新建一个干净的环境,只安装项目必须的包,减少打包的大小 pip install pyinstaller 自己编写的import代码文件需要放在 D:\path\Anaconda3...防止打包的时候找不到 # 生成资源文件目录访问路径 def resource_path(relative_path): if getattr(sys, 'frozen', False): # 判断sys中是否存在...打包 激活虚拟环境,执行打包 Pyinstaller -F -w -i xlogo.ico main.py 几百行代码,打包后是30M,还是比较大 打开exe后发现图片等资源没打包进去,编辑main.spec...程序下载github地址 https://github.com/kobe24o/multiplication_calculation/releases 程序演示视频: 使用python的turtle
目录 Python全部获取路径方法 Pyinstaller打包后获取路径方法(函数) ---- 使用pyinstaller可以把.py文件打包为.exe可执行文件 具体命令(参数上网查很详细 这里不细说...EXCLUDES] [--key KEY] [-d {all,imports,bootloader,noarchive}] [-s] [--noupx] [--upx-exclude...PATH] [--bootloader-ignore-signals] [--distpath DIR] [--workpath WORKPATH] [-y] [--upx-dir...UPX_DIR] [-a] [--clean] [--log-level LEVEL] scriptname [scriptname ...]...-D 打包后有两个文件夹[dist]和[build],可执行文件在dist文件夹里面,.exe文件不可单独使用 -F 只有一个.exe文件在dist文件夹.