1. 程式人生 > >Pyinstaller打包附帶DLL、圖示和壓縮EXE方法

Pyinstaller打包附帶DLL、圖示和壓縮EXE方法

目的:

      用Pyinstaller工具將python指令碼打包成一個exe檔案

原理:

     利用spec配置檔案實現

步驟:

1、提前用命令安裝打包工具: pip install pyinstaller (已安裝的略過);

2、先生成spec檔案。用命令  pyinstaller -F test.py  生成test.spec檔案,如下圖:



3、編輯spec檔案新增第三方DLL。例如cx_Oracle模組用到的DLL,按如下格式編輯test.spec檔案的datas=[]引數;

datas=[('oci.dll','.'),('oraociei11.dll','.')]

4、編輯spec檔案新增圖示檔案。提前準備圖示檔案,例如:sm.ico,在exe = EXE()中新增 icon='sm.ico' 

引數,如下:

exe = EXE(pyz,
          a.scripts,
          a.binaries,
          a.zipfiles,
          a.datas,
          name='test',
          debug=False,
          strip=False,
          upx=True,
          runtime_tmpdir=None,

          console=True , icon='sm.ico')

5、利用upx命令壓縮exe。下載對應版本的upx工具包解壓到任意目錄下,執行命令

pyinstaller -F test.spec --upx upx路徑

如下圖:


6、spec檔案配置好後,每次修改程式碼只需執行如下編譯命令即可完成上述步驟,無需再去修改:

pyinstaller  -F  test.spec

最後打包好的exe檔案:


相關推薦

Pyinstaller打包附帶DLL圖示壓縮EXE方法

目的:      用Pyinstaller工具將python指令碼打包成一個exe檔案原理:     利用spec配置檔案實現步驟:1、提前用命令安裝打包工具: pip install pyinstaller (已安裝的略過);2、先生成spec檔案。用命令  pyinsta

Linux菜鳥起飛之路【七】文件合並歸檔壓縮

div 結果 執行 img src gzip 圖片 com .com 一、文件合並操作 1.覆蓋符號與追加符號 a)“>”代表將左邊文件的內容覆蓋右邊文件的內容,如果右邊文件不存在則創建這個文件 b)“>>”代表將左邊文件的內容追加到右邊文件中,如果右邊文

Android系統的桌面圖示文字——調整字型大小圖示文字間的間隔

一、適當縮小應用圖示名稱的字型大小,請參考我寫的“Launcher3佈局的佈局配置 ”,先確認裝置使用的哪一個profile標籤,然後適當縮小對應的launcher:iconTextSize 二、圖示和文字間的間隔 1、路徑:packages\apps\Launcher3\src\co\

Pyinstaller 打包 py虛擬環境 linux windows

1.打包錯誤 第一時間  看路徑  是否有中文 2.打包後   發現exe 依舊打不開。    考慮是否有依賴圖片  直接把程式碼中所需要的圖片  放到與exe同目錄下(前提  程式碼中的圖片路徑為 當前目

ionic入門之色彩圖示邊距介面元件:列表

色彩 ionic定義了九種前景/背景/邊框的色彩樣式,: 可以在任何元素上使用這些樣式設定前景和背景顏色: <any class="positive-bg energized"> ... </any> 圖示 ionic使用io

微信分享朋友圈分享程式碼自定義標題說明圖示分享連結

最近在做手機網站在分享到微信時,通過微信內建瀏覽器訪問頁面分享後,希望可以自定義小圖示(imgUrl)和分享連結(lineLink),下面下微信內建瀏覽器分享功能的JS程式碼,希望對大家有所幫助。 JS程式碼如下:        var imgUrl = "http://www.gdibn.com/m/im

Java-序列化持久化壓縮

1. 序列化的作用    將物件變成一串位元組流      不用序列化能否儲存磁碟上?   可以,但是你要將物件中一個個的基本屬性進行寫入操作,比如int之流, 當然,   按你自己希望的順序,.      序列化和持久化之間的關係   序列化過程是持久化的一種方式,當然

Socket程式設計------TCP檔案傳輸(文件聲音圖片視訊壓縮包等)

本程式是基於TCP穩定傳輸的檔案傳輸,可以相容任何型別任何格式的檔案傳輸。 ☆基本思路(客戶端) 客戶端需要明確伺服器的ip地址以及埠,這樣才可以去試著建立連線,如果連線失敗,會出現異常。 連線成功,說明客戶端與服務端建立了通道,那麼通過IO流就可以進行資料的傳輸,而So

StringStringbuilderStringBuffer常用方法

case 位置 string對象 ase system span builder println lsi 1、String類: //根據字符串直接量來創建一個String對象。新創建的對象是該參數字符串的副本。 String s = new String("String

封裝property綁定方法

you integer 第一個 做到 參數 bmi 內部 定義數據 實例化 一、封裝 1.定義   封:指的是該屬性對外是隱藏的,但是對內部是開放的   裝:申請一個名稱空間,往裏邊丟名字和屬性 2.為什麽要有封裝   2.1 封裝數據屬性的目的:   首先定義數據屬性的目

python中@staticmethod@classmethod實例方法

dir pri cep ear 代碼 應用 can 打印 靜態 1.形式上的異同點: 在形式上,Python中:實例方法必須有self,類方法用@classmethod裝飾必須有cls,靜態方法用@staticmethod裝飾不必加cls或self,如下代碼所示: 1

Android 修改app圖示名稱的方法

1修改程式名: 請到values/strings.xml下 ? 1 2

使用PivotPivot_TableStackUnstack等方法在Pandas中對資料變形(重塑)

        Pandas是著名的Python資料分析包,這使它更容易讀取和轉換資料。在Pandas中資料變形意味著轉換表或向量(即DataFrame或Series)的結構,使其進一步適合做其他分析。在本文中,小編將舉例說明最常見的一些Pandas重塑功

Android系統預製APKsobin的方法

一、Android系統中預製APK 1. 預製有原始碼的APK的Android.mk LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE_TAGS := optional // optional:指該模組

java 介面中用privateprotectedpublicdefaultstatus修飾方法變數

通常使用java 的介面時都是不帶修飾符的public interface Test { int a = 0; void test(); } 其實這個裡面有好多修飾符都是預設省略掉了。 正確的型別應該是: public interface Test { publ

設定Textview的DrawableleftDrawableright 等圖片與文字間距位置大小的方法

給自己記錄點筆記順便也給用的著的朋友給點參考設定Textview的Drawableleft 等圖片的間距的問題 以Textview舉例 想得到如下圖的Textview效果public class MyText extends TextView {    public MyT

OpenCV3Python3PyCharm安裝方法及環境配置

   新手用原生的Python​安裝計算機視覺相關環境不是太方便,所以可以選擇整合環境,可以選用Anaconda整合開發環境。 第一步,下載: 從官方地址https://www.continuum.io/downloads#windows下載,windows操作平臺下官網現

線性篩約數個數約數的新方法

n) http 約數 質因子 9.png int pan 思考 -s 最近本人腦洞大開,發現了一種線性篩約數個數和約數和的一種神奇方法。 網上的方法我看基本都是利用num[i]數組記錄i最小的質因子的個數,然後再搞搞。 我認為可以省去num[i]數組,直接進行遞推。 我們知

pyinstaller打包exe問題:AttributeErrorsetuptoolsDLLPyQt5

之前寫的一個Python程式,打包為 .exe 完全正常,這次卻報錯。還不知道如何將.py檔案轉為.exe檔案的可以檢視: 將Python程式(.py)轉換為Windows可執行檔案(.exe) 一、背景介紹     公司使用的python環境是Anconda+P

Linux文件壓縮打包(gzipbip2xz工具)

linux常見壓縮格式Windows:.rar、.zip、.7zLinux :.zip、.gz、.bz2、.xz、.tar、.gz、.tar.bz2、.tar.xzgzip壓縮工具用來壓縮文件(常用)gzip 1.txt 壓縮 1.txt g