使用PyInstaller把Python脚本打包成exe

简介:

1、下载地址:http://www.pyinstaller.org/ 。

2、解压即用(V2.1)。注意环境变量,或者用pyinstaller.py的全路径,或者到解压目录下使用。*^_^*

3、打包命令示例:

1
python pyinstaller.py  - - onefile yourprogram.py

4、参数信息参见手册的Options 。


*** Updated 2015-12-11 ***

1、用pip安装pyinstaller3。

1
pip3 install pyinstaller

2、打包命令示例:

1
pyinstaller --onefile yourprogram.py

另外两个常用的参数:

(1)、添加图标

1
-i walker.ico     //添加图标

(2)、压缩可执行文件(upx

1
--upx-dir UPX_DIR     //指定压缩程序(upx.exe)目录,默认当前目录


FAQ:

Q1、ImportError: DLL load failed

A1、walker遇到的情况是引用了pyd文件,而这个pyd文件依赖其他dll库,walker的解决方案是安装VC2010运行时库。


Q2、程序中用到多进程在打包时应注意些什么?

A2、在main函数中添加multiprocessing.freeze_support()语句,参考这里


Q3、报如下几种错误:

1
2
3
ImportError: No module named _mssql
ImportError: No module named decimal
ImportError: No module named uuid

A3、很可能是代码中用到了pymssql模块,这时的解决方法是:a、import decimal;b、import uuid;c、重新编译;d、拷贝_mssql.pyd到发布目录。


Q4、打包成功,运行时报如下错误:

1
2
3
4
Traceback (most recent call last):
   File  "main.py" , line 9,  in  <module>
ModuleNotFoundError: No module named  'sub.py'
[4100] Failed to execute script main

A4、walker 排查出的原因是 py 文件编码不一致,main.py 是 utf8 编码,sub.py 是 gbk 编码,统一成 utf8 编码后问题解决。


相关阅读:

1、Python 打包可执行文件

2、Linux下安装pyinstaller用于将py文件打包生成一个可执行文件

3、pyinstaller无法在命令行运行,提示failed to create process.


*** walker * Updated 2015-12-11 ***

本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/1351403如需转载请自行联系原作者


RQSLT

相关文章
|
24天前
|
Linux Shell Python
Linux执行Python脚本
Linux执行Python脚本
26 1
|
14天前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
【4月更文挑战第9天】本文探讨了Python在自动化测试中的应用,强调其作为热门选择的原因。Python拥有丰富的测试框架(如unittest、pytest、nose)以支持自动化测试,简化测试用例的编写与维护。示例展示了使用unittest进行单元测试的基本步骤。此外,Python还适用于集成测试、系统测试等,提供模拟外部系统行为的工具。在脚本编写实践中,Python的灵活语法和强大库(如os、shutil、sqlite3、json)助力执行复杂测试任务。同时,Python支持并发、分布式执行及与Jenkins、Travis CI等持续集成工具的集成,提升测试效率和质量。
|
20天前
|
存储 监控 异构计算
【Python】GPU内存监控脚本
【Python】GPU内存监控脚本
|
20天前
|
Ubuntu Unix Linux
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
|
29天前
|
XML Shell Linux
性能工具之 JMeter 使用 Python 脚本快速执行
性能工具之 JMeter 使用 Python 脚本快速执行
41 1
性能工具之 JMeter 使用 Python 脚本快速执行
|
1月前
|
存储 UED 开发者
Python语言的软件打包及发布
Python语言的软件打包及发布
|
1月前
|
数据采集 测试技术 Python
Python自动化脚本的魅力与实践
Python自动化脚本的魅力与实践
48 0
|
8月前
|
小程序 Linux 区块链
Python PyInstaller 打包成 Win、Mac 应用程序(app / exe)
Python PyInstaller 打包成 Win、Mac 应用程序(app / exe)
547 0
|
4月前
|
小程序 Linux 区块链
Python PyInstaller 打包成 Win、Mac 应用程序(app / exe)
Python PyInstaller 打包成 Win、Mac 应用程序(app / exe)
129 0
|
3月前
|
安全 编译器 开发者
Python打包成.exe文件直接运行
Python打包成.exe文件直接运行
111 1