python打包exe,用pyinstaller,减小打包体积方法[pipenv]

文章讲述了在使用Pyinstaller打包Python程序时遇到的文件大小异常增大和运行闪退的问题。作者分析了问题可能源于Anaconda环境中包含大量不必要的库,并介绍了使用pipenv创建虚拟环境,只安装必要库进行打包的方法。在打包后出现程序报错,通过识别错误信息并安装缺失的openpyxl库成功解决了问题。
摘要由CSDN通过智能技术生成

大家好,第一次写csdn,主要是自己碰到的问题查了好几地方都没讲透,今天把自己碰到问题和大家一起分享,希望大家也避坑。

      今天用pyinstaller打包,一个程序打包完有340Mb,翻一下之前打包文件仅30Mb~40Mb,分析了一下,网上也找了一下原因:

1、原来打包文件时,我电脑只安装了python,编辑器用的pycham,刚用没多久,库文件装得很少。

2、这次电脑安装了Anaconda,里内置了很多库,打包时会将一些不需要的库都打包进程序,而且速度也慢。

我的解决方法:

1.网上查完建议用Pipenv虚拟环境,具体步骤:

安装pipenv库:  pip install pipenv -i https://pypi.tuna.tsinghua.edu.cn/simple/   #(清华镜像源)

运行pipenv虚拟环境 : pipenv shell  

这是未进虚拟环境前:

进入虚拟环境后 

 注意:多了“(python学习视频-0l8esk90)”表示已进入虚拟环境。每个人python路径不一样,前部分名称不一样,根据自己查看。

在此虚拟环境下安装pyinstaller库(原程序已安装的,在虚拟环境下再装一次)

pip install pyinstaller -i https://pypi.tuna.tsinghua.edu.cn/simple/ 

安装要自己打包文件调用的库文件,比如我的:

 在pipenv虚拟环境下以此安装pandas/requests/ jsonpath/bs4库,random不用装,自己程序逐个pip install xxx安装所需库。

可以开始打包了,我的xxx.py文件就在“ F:\python学习视频”下面,所以直接打包

pyinstaller -i aaa.ico -F xxx.py   (自己常用,我的基本都需要控制台dos界面,输入程序所要的信息用,所以不要 - w  )

一般步骤有三种,可以根据需求使用:

  1. Pyinstaller -F py_word.py 打包exe

  2. Pyinstaller -F -w py_word.py 不带控制台的打包

  3. Pyinstaller -F -w -i aaa.ico xxx.py 打包指定exe图标打包

ico图片可以自己设计好后,在网上直接在线转ico 保存本地,文件放在和打包程序xxx.py同位置即可(注不可直接将图片后缀改成ico)

重点来了:

打包完成后,生成的程序在dist文件夹下面。运行exe文件,我在窗口下输入所需要信息后等待几秒后运行一下,弹出几条信息立马闪退,程序报错了,还看不见。

于是用微信或qq截图快捷键做好准备,运行程序弹出报错信息时快速截图

识别文字后贴入百度一搜,原来是pandas里面嵌套了openpyx1库文件,再次再pipenv环境中安装pip install openpyx1 (大家注意自己程序报错截图)查原因解决后基本不会出问题了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值