[Python办公]Python脚本如何最小化打包成 .exe 文件
off999 2024-12-28 14:43 46 浏览 0 评论
为了将这个 Python 程序打包成 .exe 文件,并尽量减小体积,我们可以使用 PyInstaller,这是一个常用的工具,用于将 Python 脚本打包为独立的可执行文件。在打包过程中,我们需要排除不必要的包和文件,以确保打包后的 .exe 文件尽可能小。
【直接一条命令打包成最小体积】:
pyinstaller --onefile --windowed --noconsole --hidden-import=PySimpleGUI --hidden-import=fitz --hidden-import=openpyxl --exclude-module=matplotlib --exclude-module=numpy --exclude-module=pandas '.\批量替换pdf文本\FBA箱唛地址批量处理V1.0.py'步骤:
- 安装 PyInstaller:
- 如果你还没有安装 PyInstaller,可以通过以下命令pip install pyinstaller进行安装:
- 创建 .spec 配置文件:
- 使用 PyInstaller 打包时,我们可以通过 .spec 文件进行细粒度的控制。.spec 文件是 PyInstaller 使用的配置文件,我们可以在其中排除不必要的包,调整文件和资源的包含方式。
- 排除不必要的包:
- 通过 --exclude-module 参数来排除不需要的包和模块。对本脚本而言,我们只需要以下几个包:fitz (PyMuPDF), PySimpleGUI 和 openpyxl,其他不相关的依赖包可以排除。
- 调整 PyInstaller 命令和配置文件:
具体步骤
1. 打包并生成 .spec 文件
首先,通过 PyInstaller 生成初步的 .spec 文件:
pyinstaller --onefile --noconsole --name="PDFTextRedactor" your_script.py- --onefile:生成单个 .exe 文件。
- --noconsole:去除控制台窗口(适用于GUI程序)。
- --name="PDFTextRedactor":指定生成的 .exe 文件的名称。
- your_script.py:你的 Python 脚本文件。
运行该命令后,PyInstaller 会在当前目录下生成一个名为 your_script.spec 的文件。
2. 修改 .spec 文件
打开生成的 .spec 文件,进行以下修改:
- 在 hiddenimports 中排除不必要的包(例如,tkinter 等)。
- 使用 datas=[] 以确保只打包所需的文件和资源。
# your_script.spec
# 这部分代码来自 PyInstaller 自动生成的配置
# Importing PyInstaller libraries
a = Analysis(
['your_script.py'],
pathex=['.'],
binaries=[],
datas=[],
hiddenimports=[
'PySimpleGUI', # 确保只包含 PySimpleGUI
'fitz', # 确保包含 PyMuPDF
'openpyxl' # 确保包含 openpyxl
],
hookspath=[],
runtime_hooks=[],
excludes=['tkinter', 'matplotlib', 'numpy', 'pandas'], # 排除不需要的包
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
)
# Setup EXE options
exe = EXE(
a,
pathex=['.'],
console=False,
icon=None, # 如果需要,可以添加图标文件
debug=False,
strip=False,
upx=True, # 启用 UPX 压缩以减少文件大小
runtime_tmpdir=None,
name='PDFTextRedactor'
)
注意:
- hiddenimports:确保你需要的库都在这个列表中。
- excludes:排除你不需要的库(例如,tkinter,matplotlib,numpy,pandas 等大型依赖)。
- upx=True:启用 UPX 压缩,可以进一步减小 .exe 文件的大小。你需要先安装 UPX 工具,下载地址:UPX。
3. 使用 PyInstaller 生成 .exe
完成 .spec 文件修改后,在终端中运行以下命令来使用这个 .spec 文件打包程序:
pyinstaller your_script.spec这将根据 .spec 文件中的配置生成 .exe 文件。
4. 生成的 .exe 文件
- 打包后的 .exe 文件将位于 dist/ 目录下,文件名是 PDFTextRedactor.exe。
- build/ 目录包含了构建过程中的临时文件和依赖库,dist/ 目录包含了最终的 .exe 文件。
其他建议:
- UPX 压缩:
- 使用 UPX 压缩工具来进一步减小 .exe 文件的体积。确保你的 PyInstaller 使用了 UPX(如 .spec 中的 upx=True)。
- 如果你没有安装 UPX,可以从 UPX 官网 下载,并将其路径添加到环境变量中。
- 测试和优化:
- 在打包过程中,如果遇到任何错误或报错,仔细查看 build 目录下的日志文件,通常会提供调试信息。
- 通过反复测试,确保打包的 .exe 文件在不同机器上能正常运行。
总结:
- 使用 PyInstaller 打包时,尽量排除不需要的库(如 tkinter、pandas 等),并启用 UPX 压缩,能显著减小 .exe 文件的体积。
- 修改 .spec 文件中的 hiddenimports 和 excludes 配置,可以确保只打包需要的依赖库。
- 最终生成的 .exe 文件将包含所有必要的依赖,并可以在没有 Python 环境的机器上运行。
相关推荐
- 免费360清理大师官方版(华为自带清理软件)
-
挺好用的。它可以清除你手机的里面的垃圾,检测和修复软件安全性。还有一些漏洞垃圾,你可以试着对比和使用,功效和针对性比较强。您杀毒没有效果的原因可能是您的安全软件版本过旧导致的,建议您使用最新版的腾讯手...
- 万能解压器安卓版(万能解压器官方下载)
-
是一款手机文件的助手。万能解压器手机版。专注于快速解压和压缩的文件管理工具!支持ZIP,RAR,7Z,TAR,ZIPX,GZIP,JAR等压缩和解压文件格式。是超好用、超便捷的解压软件!支持在手机上将...
- cad看图(cad看图王)
-
以下是一些CAD看图的方法和技巧:1.放大/缩小:使用滚轮或放大镜工具可以方便地放大或缩小绘图。2.平移:使用平移工具可以在不改变视角的情况下将绘图向上、向下、向左或向右移动。3.旋转:使用旋转...
-
- dell笔记本售后服务电话是多少
-
以下为dell售后服务点A:戴尔笔记本电脑维修点地址:上海市长宁区长宁路1027号兆丰广场5层 B:戴尔笔记本电脑维修点地址:上海市徐汇区漕溪北路45号 C:戴尔笔记本电脑维修点地址:上海市徐汇区漕溪路250号银海大厦1...
-
2026-01-02 02:03 off999
- 如何找回浏览器(如何找回浏览器删除记录)
-
如果您的浏览器出现了问题,可以尝试以下方法来恢复浏览器:1.重新启动浏览器:关闭浏览器窗口,再重新打开浏览器,看是否能够解决问题。2.清除浏览器缓存:浏览器缓存可能会导致浏览器出现问题,可以尝试清...
- 应用备份还原app下载(应用备份与恢复下载)
-
如果您已经将手机上的数据备份到电脑,希望从电脑恢复到手机,建议您:1.电脑中安装Kies软件。注:若使用的是安卓4.3操作系统,电脑中需要安装Kies3软件。2.将手机与电脑通过数据线连接,打开Kie...
-
- office2013激活向导(microsoft office激活导向)
-
这是没有正常激活导致的,解决方法如下:1、下载正确的microsoftoffice到桌面上,右键单击从下拉菜单中选择解压到当前文件夹。2、双击桌面上的快捷方式,打开该应用程序,切换到mian选项卡。3、接着点击ez-activator按钮...
-
2026-01-02 00:51 off999
- h3c路由器手机登录入口(h3c路由器登录界面手机)
-
首先就是把华三路由器正确安装,然后手机连接路由器发射出来的WiFi信号。然后点击手机中的浏览器并深入华三路由器的登录地址 moshujia.com或者192.168.124.1,就可以登...
- u盘坏了数据怎么导出来(u盘坏了里面的数据怎么办)
-
方法一、借助数据恢复软件u盘只要不是物理性故障且数据未覆盖的情况下,可借助u盘数据恢复软件来提取打不开的u盘数据。具体操作流程如下:在电脑上插入需要恢复数据的u盘,然后运行u盘数据恢复软件—以云骑士数...
- win10家庭版原装下载(win10家庭版安装包下载)
-
有以下几种原因:第一是因为专业版功能较为齐全,但一般的使用者并不太需要。第二是由于功能齐全,它所占的体积也比较大,进而对电脑的运行速率有一定的影响。第三是Wln10各种版本都还是需要花钱购买的,而专业...
- win7装xp系统怎么安装(win7如何安装xp系统)
-
设置U盘为第一启动项并进入PE系统。开机按F2进入BOIS,在BOOT选项中将U盘设为第一启动盘,通过按F6(有的是Shift+)调整顺序。(或开机按ESC选择启动盘,即你的U盘)。按F10保存...
- windows 98是什么操作系统(windows98属于什么)
-
Windows98是微软公司发行于1998年6月25日的混合16位/32位的Windows操作系统,其版本号为4.1,开发代号为Memphis。肯定有的。Windows95操作系统刚发布的时候就...
- 下载mp3免费的网站(免费下载mp3哪些网站)
-
有免费下载mp3的网站。除了知名的几个音乐平台外,还有以下三款支持免费MP3无损音乐下载网站,可以将喜欢的歌曲下载到U盘。说明书里有呀91flac音乐网,试试这个,绝对好使,但是不要在酷狗上面说网页上...
- win10更新卸载不了怎么办(win10更新后卸载更新失败)
-
右键桌面上“此电脑”—“管理”,或者按组合键“Windows+X”—计算机管理—服务和应用程序—服务,找到Windowsupdate和BackgroundIntelligentTransfe...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
