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

yizhihongxing

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

【阅读全文】

file

因为以往发过的小工具基本都是几十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:test014test4.py

file

需要注意的是如何物理环境中已经安装了pyinstaller,在pipenv的虚拟环境中这个命令是可以使用的,但是千万不要这么做需要在pipenv的虚拟环境中再次安装一下否则打出来的exe的应用包还是很大。

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

另一个需要注意的是在pipenv的需要环境中必须安装好需要打包的代码块中所引用的相关python模块,不然打出来的exe程序包也不能正常运行的。

file

掌握了上述的pipenv虚拟环境的使用以及pyinstaller的使用,我们都能打出非常小且可用的exe程序包,感谢大家的阅读!

【往期精彩】

github上又出新项目了,可以轻松完成一键抠图!

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

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

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python打包技巧:彻底解决pyinstaller打包exe文件太大的问题 - Python技术站

(0)
上一篇 2023年4月2日 下午4:36
下一篇 2023年4月2日 下午4:37

相关文章

  • python 自定义异常/raise关键字抛出异常

    在编程过程中合理的使用异常可以使得程序正常的执行。有直接抛出异常的形式,也能通过捕获异常加入异常时的业务逻辑处理。 【阅读全文】 创建自定义异常类案例 class MyException(Exception): def __init__(self, msg): ”’ :param msg: 异常信息 ”’ self.msg = msg 使用raise关键…

    2023年4月2日
    00
  • 模型已经写好了,怎么表白就看你的了

    【阅读全文】 开始之前先来看看效果图,在控制台输入相应的参数设置即可生成自己独特的表白图。 想要在图片上书写什么样的信息,就看你的发挥了,哈哈哈~ import turtle as tle # 小乌龟绘图库 使用turtle小乌龟画图之前,先进行全局参数初始化的设置,并使得全局初始化函global_init可以动态传参供后面的方便调用。 def global…

    2023年4月2日
    00
  • 如何将多张图片合成mp4视频格式,并加入背景音乐…

    【阅读全文】 实现的思路:将准备好的图片通过opencv读取出来,并将其设置好帧数等参数后合成为无声视频。最后通过moviepy编辑视频将背景音乐加入到视频中。 开始之前还是需要说明一下非标准库的来源,因为有些库的名称和需要导入模块的名称不一定就是一样的。 import os # python标准库,不需要安装,用于系统文件操作相关 import cv2 #…

    2023年4月2日
    00
  • 知识汇总:python办公自动化应该学习哪些内容

    【阅读全文】 当前python自动化越来越受到欢迎,python一度成为了加班族的福音。还有大部分人想利用python自动化来简化工作,不知道从何处下手,所以,这里整理了一下python自动化过程中的各种办公场景以及需要用到的python知识点。 Excel办公自动化 python 针对excel表格处理的非标准库应该是最多的,这也是把excel办公自动化放…

    2023年4月2日
    00
  • 办公自动化:Image图片转换成PDF文档存储

    实现图片转换成PDF文档的操作方法有很多,综合对比以后感觉fpdf这个模块用起来比较方便而且代码量相当少。 【阅读全文】 安装的方式很常规,直接使用pip安装就行了。 pip install fpdf 将需要使用的三方模块导入进来 from fpdf import FPDF # PDF文档对象操作库 import os # 文件路径操作库 初始化PDF文档对…

    2023年4月2日
    00
  • 零配置python日志,安装即用

    写了很多年的python日志都是使用内置的logging模块来完成的,使用时都需要经过繁琐的配置。有时候,还可能出现丢失日志的情况,直到loguru的出现。 【阅读全文】 loguru真的是十分的简单的,安装之后直接导入到python代码块中即可直接使用。 1、安装环境 我们还是按照pip的方式来进行安装,默认使用清华大学的镜像站。 pip install …

    2023年4月2日
    00
  • GUI 应用:socket 网络聊天室

    在这个周末刚刚写出来的python桌面应用–网络聊天室,主要通过pyqt5作为桌面应用框架,socket作为网络编程的框架,从而实现包括客户端和服务端的网络聊天室的GUI应用,希望可以一起学习、一起进步! 应用包括服务端server_ui.py、客户端client_ui.py两个python模块实现,并且在pyqt5的使用过程中都使用QThread多线程应…

    2023年4月2日
    00
  • python做了个自动关机工具,再也不会耽误我下班啦

    上班族经常会遇到这样情况,着急下班结果将关机误点成重启,或者临近下班又通知开会,开完会已经迟了还要去给电脑关机。 【阅读全文】 今天使用PyQt5做了个自动关机的小工具,设置好关机时间然后直接提交即可,下班就可以直接走人了。 有直接需要.exe可执行应用的话,直接到文末处获取下载链接! 自动关机小工具也支持了清除已经设置好的关机时间,防止已经设置好了关机时间…

    2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部