PyInstaller安装包瘦身指南

 更新时间:2023年03月21日 14:34:16   作者:申子辰林  
直接pyinstaller打包的话,如果当前pip环境安装的库较多的话,会导致生成的可执行exe程序文件过大,本文详细的介绍了PyInstaller安装包瘦身的过程,感兴趣的可以了解一下

一、安装包瘦身

直接pyinstaller打包的话,如果当前pip环境安装的库较多的话,会导致生成的可执行exe程序文件过大,大几十MB。

但是如果卸载掉一些库的话,影响其他项目导致不可用。

【优化方案】

1.采用虚拟环境打包,按需安装库

cd 到对应要打包的项目工程目录中

如果是首次打包,需要建立虚拟环境

pipenv install

如果是第二次要更新打包的话,直接

pipenv shell

2.只安装当前所需的依赖库

可以先更新一下pip到最新版本

python.exe -m pip install --upgrade pip

安装第三方库

pip install pandas

建议加上-i https://pypi.tuna.tsinghua.edu.cn/simple

从国内的一些镜像源下载安装,速度会快很多

记得安装pyinstaller

3.加入UPX

UPX is not available.

如果忽略这个错误,也是可以打包的,,但是打出来的exe文件会大一点。

pyinstaller是通过UPX进行压缩操作,如果缺少upx,会导致exe变大。

The Ultimate Packer for eXecutables(可执行文件的终极打包程序)

https://upx.github.io/下载UPX

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

解压到pipenv虚拟环境对应的目录下,C:\Users\用户名\.virtualenvs\项目名\Scripts
装好UPX之后,打包的exe比未安装UPX的exe小了

4.打包EXE

pyinstaller -F test.py -ntest

带图标-i test.ico

pyinstaller -F -i test.ico main.py -ntest

到此这篇关于PyInstaller安装包瘦身指南的文章就介绍到这了,更多相关PyInstaller安装包瘦身内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ Invalid argument的解决方法

    Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ I

    这篇文章主要介绍了Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ Invalid argument的解决方法,通过模拟器ram设置的调整予以解决,需要的朋友可以参考下
    2016-07-07
  • python实现简单爬虫功能的示例

    python实现简单爬虫功能的示例

    本文主要是介绍python实现简单爬虫功能的示例,主要实现了把我们想要的图片爬虫到本地的一个示例,有需要的朋友可以了解一下。
    2016-10-10
  • 详解Django定时任务模块设计与实践

    详解Django定时任务模块设计与实践

    这篇文章主要介绍了详解Django定时任务模块设计与实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • 浅谈Pandas Series 和 Numpy array中的相同点

    浅谈Pandas Series 和 Numpy array中的相同点

    今天小编就为大家分享一篇浅谈Pandas Series 和 Numpy array中的相同点,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 对python:print打印时加u的含义详解

    对python:print打印时加u的含义详解

    今天小编就为大家分享一篇对python:print打印时加u的含义详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python中排序函数sorted()函数的使用实例

    Python中排序函数sorted()函数的使用实例

    sorted()作为Python内置函数之一,其功能是对序列(列表、元组、字典、集合、还包括字符串)进行排序,下面这篇文章主要给大家介绍了关于Python中排序函数sorted()函数的相关资料,需要的朋友可以参考下
    2022-11-11
  • 对python抓取需要登录网站数据的方法详解

    对python抓取需要登录网站数据的方法详解

    今天小编就为大家分享一篇对python抓取需要登录网站数据的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • python结合多线程爬取英雄联盟皮肤(原理分析)

    python结合多线程爬取英雄联盟皮肤(原理分析)

    多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。这篇文章主要介绍了python爬取英雄联盟皮肤结合多线程的方法,需要的朋友可以参考下
    2021-05-05
  • 简单了解Python matplotlib线的属性

    简单了解Python matplotlib线的属性

    这篇文章主要介绍了简单了解Python matplotlib线的属性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-06-06
  • Python实现基于二叉树存储结构的堆排序算法示例

    Python实现基于二叉树存储结构的堆排序算法示例

    这篇文章主要介绍了Python实现基于二叉树存储结构的堆排序算法,结合实例形式分析了Python二叉树的定义、遍历及堆排序算法相关实现技巧,需要的朋友可以参考下
    2017-12-12

最新评论