python打包太大问题_Pyinstaller打包的一些坑

Pyinstaller打包的坑

pyinstaller是python windows下打包的神器,但是使用过程中经常会碰到坑,以下是我碰到的坑。

1、打包体积太大

1.1在虚拟环境下搭建干净的环境

打开cmd 输入以下命令创建一个虚拟环境。

#建立虚拟环境

pipenv install

#进入虚拟环境

pipenv shell

#安装模块

pip install 你py文件里用到的模块

#打包的模块也要安装

pip install pyinstaller

#开始打包

pyinstaller -Fw

1.2把不必要的库去掉

记得我有次做一个数据去重的功能,用了pandas的库,结果打包起来将其他没有用到的库也打包进来了,后面一查,发现pandas、Numpy等多个库会相互关联,在打包的时候尽管没用到,打包也要算进来。(特别是numpy和pandas库及其的大)

本来打包下来一个简单信息写入excel并去重的小程序,硬是打包成了700m的执行文件,后来去重的功能我不用pandas写,立马到了11m,小的非常明显。

2、直接执行py文件可以运行,打包后无法执行

这个问题我查了蛮久的,后面在知乎上找到了解决方案。先到/build/name/warnname.txt的报错里看,发现了n多的missing module,想想也不可能缺失那么多模块。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用pyinstaller打包Python程序时,经常会出现打包后可执行文件过大的问题。这是由于pyinstaller打包时会关联很多的Python内联模块,并且可能会引入一些不必要的类库,导致打包的程序变得很大。为了解决这个问题,有几种方法可以尝试。 一种方法是使用upx压缩工具,通过对打包后的可执行文件进行压缩,可以有效减小文件大小。。 另外,还可以考虑使用pipenv创建Python虚拟环境,在虚拟纯净环境中打包程序,可以避免引入不必要的文件,从而有效减小生成的可执行文件的大小。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Pyinstaller打包python文件太大?教你三个小技巧有效减小文件体积](https://blog.csdn.net/haojiangcong/article/details/130339060)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [基于Pyinstaller打包Python程序并压缩文件大小](https://download.csdn.net/download/weixin_38590541/12851639)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值