PyInstaller安裝包瘦身指南
一、安裝包瘦身
直接pyinstaller打包的話,如果當(dāng)前pip環(huán)境安裝的庫(kù)較多的話,會(huì)導(dǎo)致生成的可執(zhí)行exe程序文件過大,大幾十MB。
但是如果卸載掉一些庫(kù)的話,影響其他項(xiàng)目導(dǎo)致不可用。
【優(yōu)化方案】
1.采用虛擬環(huán)境打包,按需安裝庫(kù)
cd 到對(duì)應(yīng)要打包的項(xiàng)目工程目錄中
如果是首次打包,需要建立虛擬環(huán)境
pipenv install
如果是第二次要更新打包的話,直接
pipenv shell
2.只安裝當(dāng)前所需的依賴庫(kù)
可以先更新一下pip到最新版本
python.exe -m pip install --upgrade pip
安裝第三方庫(kù)
pip install pandas
建議加上-i https://pypi.tuna.tsinghua.edu.cn/simple
從國(guó)內(nèi)的一些鏡像源下載安裝,速度會(huì)快很多
記得安裝pyinstaller
3.加入U(xiǎn)PX
UPX is not available.
如果忽略這個(gè)錯(cuò)誤,也是可以打包的,,但是打出來的exe文件會(huì)大一點(diǎn)。
pyinstaller是通過UPX進(jìn)行壓縮操作,如果缺少upx,會(huì)導(dǎo)致exe變大。
The Ultimate Packer for eXecutables
(可執(zhí)行文件的終極打包程序)
去https://upx.github.io/下載UPX
解壓到pipenv虛擬環(huán)境對(duì)應(yīng)的目錄下,C:\Users\用戶名\.virtualenvs\項(xiàng)目名\Scripts
裝好UPX之后,打包的exe比未安裝UPX的exe小了
4.打包EXE
pyinstaller -F test.py -ntest
帶圖標(biāo)-i test.ico
pyinstaller -F -i test.ico main.py -ntest
到此這篇關(guān)于PyInstaller安裝包瘦身指南的文章就介紹到這了,更多相關(guān)PyInstaller安裝包瘦身內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android模擬器無法啟動(dòng),報(bào)錯(cuò):Cannot set up guest memory ‘a(chǎn)ndroid_arm’ I
這篇文章主要介紹了Android模擬器無法啟動(dòng),報(bào)錯(cuò):Cannot set up guest memory ‘a(chǎn)ndroid_arm’ Invalid argument的解決方法,通過模擬器ram設(shè)置的調(diào)整予以解決,需要的朋友可以參考下2016-07-07python實(shí)現(xiàn)簡(jiǎn)單爬蟲功能的示例
本文主要是介紹python實(shí)現(xiàn)簡(jiǎn)單爬蟲功能的示例,主要實(shí)現(xiàn)了把我們想要的圖片爬蟲到本地的一個(gè)示例,有需要的朋友可以了解一下。2016-10-10詳解Django定時(shí)任務(wù)模塊設(shè)計(jì)與實(shí)踐
這篇文章主要介紹了詳解Django定時(shí)任務(wù)模塊設(shè)計(jì)與實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07淺談Pandas Series 和 Numpy array中的相同點(diǎn)
今天小編就為大家分享一篇淺談Pandas Series 和 Numpy array中的相同點(diǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06對(duì)python:print打印時(shí)加u的含義詳解
今天小編就為大家分享一篇對(duì)python:print打印時(shí)加u的含義詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12Python中排序函數(shù)sorted()函數(shù)的使用實(shí)例
sorted()作為Python內(nèi)置函數(shù)之一,其功能是對(duì)序列(列表、元組、字典、集合、還包括字符串)進(jìn)行排序,下面這篇文章主要給大家介紹了關(guān)于Python中排序函數(shù)sorted()函數(shù)的相關(guān)資料,需要的朋友可以參考下2022-11-11對(duì)python抓取需要登錄網(wǎng)站數(shù)據(jù)的方法詳解
今天小編就為大家分享一篇對(duì)python抓取需要登錄網(wǎng)站數(shù)據(jù)的方法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-05-05python結(jié)合多線程爬取英雄聯(lián)盟皮膚(原理分析)
多線程是為了同步完成多項(xiàng)任務(wù),不是為了提高運(yùn)行效率,而是為了提高資源使用效率來提高系統(tǒng)的效率。這篇文章主要介紹了python爬取英雄聯(lián)盟皮膚結(jié)合多線程的方法,需要的朋友可以參考下2021-05-05簡(jiǎn)單了解Python matplotlib線的屬性
這篇文章主要介紹了簡(jiǎn)單了解Python matplotlib線的屬性,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-06-06Python實(shí)現(xiàn)基于二叉樹存儲(chǔ)結(jié)構(gòu)的堆排序算法示例
這篇文章主要介紹了Python實(shí)現(xiàn)基于二叉樹存儲(chǔ)結(jié)構(gòu)的堆排序算法,結(jié)合實(shí)例形式分析了Python二叉樹的定義、遍歷及堆排序算法相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-12-12