惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
T
Threatpost
Latest news
Latest news
N
News | PayPal Newsroom
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Help Net Security
Help Net Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
AI
AI
Simon Willison's Weblog
Simon Willison's Weblog
TaoSecurity Blog
TaoSecurity Blog
The Last Watchdog
The Last Watchdog
L
LINUX DO - 热门话题
Google DeepMind News
Google DeepMind News
T
Threat Research - Cisco Blogs
O
OpenAI News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
The Exploit Database - CXSecurity.com
NISL@THU
NISL@THU
Application and Cybersecurity Blog
Application and Cybersecurity Blog
S
Securelist
小众软件
小众软件
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Martin Fowler
Martin Fowler
S
SegmentFault 最新的问题
Cisco Talos Blog
Cisco Talos Blog
云风的 BLOG
云风的 BLOG
AWS News Blog
AWS News Blog
GbyAI
GbyAI
N
News and Events Feed by Topic
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
美团技术团队
Engineering at Meta
Engineering at Meta
A
About on SuperTechFans
博客园 - 三生石上(FineUI控件)
S
Schneier on Security
博客园 - 聂微东
V2EX - 技术
V2EX - 技术
T
Troy Hunt's Blog
SecWiki News
SecWiki News
S
Secure Thoughts
B
Blog RSS Feed
Hugging Face - Blog
Hugging Face - Blog
WordPress大学
WordPress大学
腾讯CDC
H
Heimdal Security Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
www.infosecurity-magazine.com
www.infosecurity-magazine.com
P
Privacy International News Feed

博客园 - ubirdy

在Cursor中使用Anthropic的Skills 切换至windows自带中文输入法后卡住的bug解决 用ikuai软路由提供内网NTP服务 在欧拉系统(openEuler)上安装uWSGI 在欧拉系统(openEuler)上安装Nginx 海康工业相机SDK错误码常见场景解析 ubuntu22.04 server安装nvidia cuda 12.08提示Nouveau 驱动已经在用 ubuntu22.04更换镜像源 ubuntu22.04安装CUDA ICMP时间戳漏洞CVE-1999-0524的处理 解决supervisor在香橙派AIpro上启动问题 用ffplay在香橙派AIPro上播放PCM文件 香橙派OrangePi_AiPro超频CPU与NPU 昇腾310B4在转换onnx格式至om格式时提示BrokenPipeError: [Errno 32] Broken pipe FFplay命令参数 yoloV7训练结果分析 在windows中安装pytorch的GPU版本及torchvision Win11禁用右键菜单折叠改用经典右键菜单 Altas产品查询CANN软件包版本的方法
Python打包工具 Pyinstaller使用教程
ubirdy · 2025-04-07 · via 博客园 - ubirdy

1、安装PyInstaller:首先,需要使用pip命令安装PyInstaller。在命令行中执行以下命令即可:

注意:请按需将pip替换成pip3

2、打包脚本:在命令行中进入到要打包的Python脚本所在的目录。然后执行以下命令:

pyinstaller your_script.py

3、自定义打包选项:PyInstaller提供了一些选项,可以用来自定义打包过程。

--onefile  将所有的依赖库打包成一个单独的可执行文件,而不是多个文件。

--name  指定生成的可执行文件的名称

--icon  指定生成的可执行文件的图标文件

-–distpath   该参数后跟可执行文件的路径

-F   生成一个可执行文件

-D   生成一个目录(包含多个文件)作为可执行文件

-w   运行exe时,不显示命令行窗口(仅对Windows有效)

-i   该参数后跟可执行文件的icon图标路径

-n  该参数后跟可执行文件的新名字

4、有些情况下,PyInstaller可能无法自动识别脚本的所有依赖库,或者依赖库的路径不正确。这时,可以使用--hidden-import选项手动添加缺失的依赖库。例如:

pyinstaller --hidden-import your_module your_script.py

5、处理资源文件:如果脚本中使用了一些外部的资源文件(如图片、配置文件等),这些文件也需要被打包进可执行文件中。可以使用--add-data选项来指定资源文件的路径和在可执行文件中的相对路径。例如:

pyinstaller --add-data "path/to/resource.png:resource" your_script.py

6、运行可执行文件:生成的可执行文件可以在其他机器上直接运行,无需安装Python解释器和相关库。只需双击可执行文件或在命令行中执行即可运行脚本。

 命令示例:

pyinstaller -i apple.ico -F test.py

参数解释:-i 是生成exe文件的图标,后边参数即为图标的路径;-F生成一个exe文件,如果用-D的话,会生成一个文件夹,包含exe和依赖的dll等文件;最后是要打包的python脚本名称;如果运行exe后,不想显示cmd窗口的话,加上-w即可

7、对于一些库需要依赖DLL文件,可以加上 --collect-all 自动收集所有依赖DLL

pyinstaller -F -w -i icon.ico test.py --collect-all pyzbar (pyzbar是需要DLL的库名,按实际情况输入库名)