pyinstaller打包python代码
作者:YXN-python 阅读量:95 发布日期:2022-10-01
单文件打包
生成单个exe文件命令:
pyinstaller -F -w main.py -n now_name -i ico_url --clean
# 运行完之后,在目录下回生成‘dist’文件夹,里面存放的就是exe文件
其中:
-F 表示生成单个exe文件
-w 如果是GUI界面,会不弹出命令行cmd窗口
-n 指定生成exe的名称
-i 如果你的主程序没有图标,可使用此为生成的exe加载图标
--clean 在每次编译生成exe时,清除之前的编译文件
多文件打包
# 1、cmd进入到程序根目录
# 生成spec文件 main.py为主程序进口
pyi-makespec -F main.py -w -i logo.ico
# 运行上面语句会在根目录生成后缀为.spec的文件
# 2、在根目录新建文件夹res,将根目录所有配置文件复制一份到res中
# 3、修改spec文件的datas为
datas=[('res','.')]
# 4、打包
pyinstaller ytmusic.spec
常见报错
如果打包过程中出现导包报错 或 正常打包 但 程序运行缺少模块报错,可以修改spec文件的hiddenimports为:hiddenimports=['pypinyin']
多个模块可逗号隔开hiddenimports=['mutagen.id3','pymediainfo','pypinyin']
虚拟环境下通过pyinstaller 打包
# 1、在命令行(CMD)使用pip命令安装pipenv库,用于创建虚拟环境
pip install pipenv
# 采用调用国内镜像库安装:
pip install keras -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
# 2、新建一个准备当环境的文件夹,并cd进入该文件夹
# 3、建立虚拟环境
pipenv install
# 4、进入虚拟环境(以下操作皆为虚拟环境下的操作)
pipenv shell
# 5、安装.py文件用到的模块
pip install 【.py用到的模块】
# 6、安装pyinstaller模块,用于打包.py文件
pip install pyinstaller
# 7、使用pyinstaller打包文件
pyinstaller -Fw test.py(.py文件根据实际情况更改)
# 删除虚拟环境
# 先exit()退出虚拟环境,然后删除虚拟环境使用:
pipenv --rm
# 要删除虚拟环境,可以先卸载掉之前在虚拟环境中安装的库,既然都要删了,那库耶不用了。
py -m PyInstaller --noconsole -y -F -i ./logo.ico --clean -n remain .\main.py
YXN-python
2022-10-01