一、将python文件打包成.exe文件
1、环境:pyinstaller,pythonx.x
2、安装python及pyinstaller
(1)打开DOS窗口,输入以下命令,安装pyinstaller:
(安装python略)
pip install pyinstaller
注意:pyinstaller需要在其安装的路径下才能正确运行
(2)安装完成后,检查是否安装成功:pyinstaller --version
3、打包成exe程序
(1)打包单个脚本文件:
1)输入命令
pyinstaller -F [-w] *.py -n [自定义名称]
-F: 打包成一个exe文件
-w: 取消控制台显示,即运行时不弹出黑窗口;建议不使用-w,方便查看打印的信息或者出错信息
-n: 自定义.exe文件的名称;如果不使用-n,则默认是脚本脚本文件的名称
2)生成的文件:
(打包成功,在命令窗口会显示exe程序的位置,在dist文件夹下)
(2)打包项目中的所有文件
pyinstaller -F [-w] [项目的主文件] –hidden-import [其他的python文件]
二、可能会遇到的问题:
1、pyInstaller提示错误"Unable to find "nltk_data" when adding binary and data files
我的环境:win10+python3.7+pyinstaller3.6
【解决方案】
- 找到hook-nltk.py文件,通常此目录为
<PythonPath>/Lib/site-packages/PyInstaller/hooks/hook-nltk.py
(我的)D:Program FilesAnaconda3Libsite-packagesPyInstallerhooks hook-nltk.py
- 修改此.py文件
修改后:
注意:
一定要把<path_to_nltk_data>替换成自己电脑上nltk_data文件夹所在的路径!
可使用两行python代码找到nltk_data文件夹所在路径:
from nltk import data
print(data.find('.'))
2、pyinstaller打包出现UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 解决方案
【解决方案】
在打包的命令行中先输入chcp 65001
然后再输入打包命令:
pyinstaller -F xxx.py