Python Library 学习 - Pyinstaller py文件打包为exe
Python Library 学习 - Pyinstaller py 文件打包为 exe
1. 安装
pip3 install pyinstaller 
1.1. 直接运行
直接在CMD中运行
pyinstaller -F `*.py` -i="*.ico" --upx-dir="*\upx.exe" --distpath="*folder"
注意:
- 
如果是在新建的python环境中,即系统未配置环境变量,
pyinstaller用pyinstaller.exe的路径指定(在pyhon文件目录的Scripts文件夹下) - 
在运行的过程中,缓存文件以及最后生成文件会直接生成在当前cmd目录下。因此,建议先通过 cmd命令
cd到项目文件夹。 - 
所有文件路径,建议使用绝对路径,避免出错。
 - 
运行时,避免使用中文路径,以防出错。
 
1.2. 相关参数
- 
-F可替换为 - 
*.py带打包py文件路径,可替换为*.spec文件路径 - 
-i=指定图标路径 - 
--upx-dir=指定upx.exe路径。实测UPX压缩无效果 - 
--distpath=指定存放打包生成的exe文件的文件夹。 
例子:
2. 常见问题
1. 打包后exe文件太大
- 
经过自己的测试,打包是会把安装的所有库(包括
.py中未引入的库)都打包进去。 - 
建议新建一个python环境,只安装
.py中引入的库,然后再运行pyinstaller命令打包。 
2. 打包过程中跳出 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position
先在cmd中执行chcp 65001命令,再执行pyinstaller命令。参考
3. 打包完成后,运行exe提示 No module named XXX
3. python 虚拟环境打包 exe
不建议使用 Anaconda 建立虚拟环境,经实测,使用 Anaconda 打包后 exe 巨大(Anacoda打包300MB+,新建Python环境打包60MB+)。
建议: 使用 PyCharm 为项目单独创建一个虚拟环境 (virenv),只安装项目所需的 libraries。
                    
                
                
            
        
浙公网安备 33010602011771号