关于python:python打包技巧彻底解决pyinstaller打包exe文件太大的问题

3次阅读

共计 1098 个字符,预计需要花费 3 分钟才能阅读完成。

之前也写过很多的小工具,粉丝敌人们应该都晓得在本公众号内回复任意关键字即可获取以往的工具源码或是 exe 可执行利用。

【浏览全文】

因为以往发过的小工具根本都是几十 MB 大小的 exe 利用,也就没有在意 exe 太大给大家带来的困扰,明天就筹备来彻底的解决一下这个问题。

其实每次打包的 exe 的利用过大无非就是两个方面的语言因导致的,一是咱们在开发的代码的过程中为了简便常常应用 import * 的操作间接导入库中所有的模块。

二是在打包过程中间接应用现有的环境间接利用 pyinstaller 的命令,导致 python 的很多规范库和不须要的三方模块被导入。剖析分明起因那就好办了,解决办法必定是有的,那就是 pipenv 非标准库。

接下来具体看看咱们该如何应用 pipenv 打出最小的 exe 的利用,没有装置的话应用 pip 的形式装置一下即可。

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

装置实现后,即能够应用 pipenv 的虚拟环境来进行操作了,失常状况下装置上面的步骤执行 pipenv 的虚拟环境操作:

  1. 建设虚拟环境
    pipenv install
  2. 进入虚拟环境(上一步可省略, 因为没有虚拟环境的话会主动建设一个)
    pipenv shell
  3. 装置须要打包的代码块中应用到的所有的 python 模块
    pip install requests pyquery pysimplegui fake_useragent
  4. 装置 pyinstaller 模块用于打包
    pip install pyinstaller
  5. 应用 pyinstaller 命令间接开始打包
    pyinstaller -Fw E:\test014\test4.py

须要留神的是如何物理环境中曾经装置了 pyinstaller,在 pipenv 的虚拟环境中这个命令是能够应用的,然而千万不要这么做须要在 pipenv 的虚拟环境中再次装置一下否则打进去的 exe 的利用包还是很大。

这是因为物理环境中原有的 pyinstaller 曾经关联了很多的 python 内联模块,导致就算在虚拟环境中打的 exe 程序包依然十分大的缘故。

另一个须要留神的是在 pipenv 的须要环境中必须装置好须要打包的代码块中所援用的相干 python 模块,不然打进去的 exe 程序包也不能失常运行的。

把握了上述的 pipenv 虚拟环境的应用以及 pyinstaller 的应用,咱们都能打出十分小且可用的 exe 程序包,感激大家的浏览!

【往期精彩】

github 上又出新我的项目了,能够轻松实现一键抠图!

python 做了个自动关机工具【文末获取下载链接】

吐血整顿 python 数据分析利器 pandas 的八个生命周期!

正文完
 0