python安装pyqt5 qml_PyQt5:PyQt5程序打包2
LEARN MORE
正文
今天我們用計算器的例子打包一下這個應用程序(Windows7系統下)。
1
簡單的打包pyinstaller calculator.py
在屏幕上出現大量的INFO信息后,我們看到程序的當前目錄出現了build、dist目錄和calculator.spec文件。
在dist文件夾中,您可以找到分發給用戶的捆綁應用程序calculator.exe。除了這個文件外,還有65個文件供這個文件使用。
對于某些用途,您可以編輯myscript.spec的內容(在使用規范文件下描述)。執行此操作后,您將PyInstaller spec文件而不是腳本:
pyinstaller myscript.spec
myscript.spec文件包含以腳本文件作為參數運行時指定的選項提供的大部分信息。使用pyinstaller運行spec文件時,通常不需要指定任何選項。從spec文件構建時,只有少數命令行選項有效。
例如,您可以提供腳本或spec文件的路徑
pyinstaller options… ~/myproject/source/myscript.py
或者在Windows上,
pyinstaller "C:\Documents and Settings\project\myscript.spec"
我們運行該程序的時候,出現一個命令行窗口,這個是方便我們進行命令行交互使用的,事實上這個程序我們不需要命令行交互。
總的可執行文件大小84.4MB,壓縮成rar文件大約26.6MB,文件不小。
2
單一文件打包
我們再試試把它打包成單一文件,同時去掉命令行窗口。
pyinstaller -F -w calculator.py
打包后,只有一個文件,而且沒有命令行窗口了。如下圖:
此時文件大小33.2MB,壓縮成rar文件后33.0MB,說明文件已經壓縮過了,壓縮空間不大。
換圖標
我們在上面的圖片中看到程序的圖標是這樣的,真丑!
換一個自己喜歡的吧!
pyinstaller -F -w --i "C:\\Users\\Administrator\\Desktop\\PyQt5Calculator\\res\\cc.ico" calculator.py
效果如下:
這下好看些了。
這里特別注意:
我們選擇的icon要符合Windows操作系統的標準,推薦如下大小:
應用程序圖標和控制面板項:全套包括16x16,32x32,48x48和256x256(代碼比例介于32和256之間)。 .ico文件格式是必需的。
對于經典模式,全套為16x16,24x24,32x32,48x48和64x64。
所以我們已經建議標準尺寸:
16 x 16,24 x 24,32 x 32,48 x 48,64 x 64,256 x 256。
如果我們想支持高DPI設置,完整列表還將包括以下尺寸:
20 x 20,30 x 30,36 x 36,40 x 40,60 x 60,72 x 72,80 x 80,96 x 96,128 x 128,320 x 320,384 x 384,512 x 512。
3
虛擬環境下打包
這里使用工具是virtualenv,這個是什么東東請自行百度。
C:\Users\Administrator\Desktop\venv>virtualenv --no-site-packages venv
我們先建立一個虛擬開發環境,這里使用參數“—no-site-packages”,已經安裝到系統Python環境中的所有第三方包都不會復制過來,得到的Python運行環境較為干凈。
進入我們虛擬開發環境
C:\Users\Administrator\Desktop\venv>cd ScriptsC:\Users\Administrator\Desktop\venv\Scripts>activate(venv) C:\Users\Administrator\Desktop\venv\Scripts>
出現(venv)這個,表示成功進入。
因為我們這個程序只涉及PyQt5,其它的都是標準模塊,所以我們pip安裝PyQt5和PyInstaller。
當我們虛擬環境輸入pip安裝PyQt5的時候,可能出現如下錯誤:
(venv) C:\Users\Administrator\Desktop\venv\Scripts>pip install PyQt5Fatal error in launcher: Unable to create process using '"c:\users\administrator\desktop\venv\venv\scripts\python.exe" ?"C:\Users\Administrator\Desktop\venv\Scripts\pip.exe" '
簡單的解決辦法是:
python -m pip install XXX
這個語句就能安裝第三方庫了。
然后我們再使用命令打包一下:
pyinstaller -F -w --i "C:\\Users\\Administrator\\Desktop\\PyQt5Calculator\\res\\cc.ico" calculator.py
打包后的程序大小是27.3MB,小了幾MB。
增加upx打包
UPX是一種適用于大多數操作系統的免費實用程序。 UPX壓縮可執行文件和庫,使它們更小。
UPX適用于大多數操作系統,可以壓縮大量可執行文件格式。有關下載的信息,請參閱UPX主頁,以及支持的可執行格式列表。
https://upx.github.io/
下載頁面:
https://github.com/upx/upx/releases/tag/v3.95
壓縮的可執行程序包含在UPX啟動代碼中,該代碼在程序啟動時動態解壓縮程序。解壓縮后,程序正常運行。對于已經UPX壓縮的PyInstaller單文件可執行文件,完整的執行順序是:
壓縮程序在UPX解壓縮器代碼中啟動。
解壓縮后,程序執行PyInstaller引導加載程序,為Python創建臨時環境。
Python解釋器執行您的腳本。
PyInstaller在執行路徑或使用—upx-dir選項指定的路徑上查找UPX。如果存在UPX,PyInstaller會將其應用于最終的可執行文件,除非給出了—noupx選項。 UPX經常與PyInstaller輸出一起使用,通常沒有任何問題。
執行命令如下:
pyinstaller -F -w --i "C:\\Users\\Administrator\\Desktop\\PyQt5Calculator\\res\\cc.ico" --upx-dir "C:\\upx" calculator.py
打包后大約24MB左后,但是運行時存在如下問題:
缺少Qt組件無法正常啟動,提示需要有Qt platforms plugin,于是我們來到…Python36\Lib\site-packages\PyQt5\Qt\plugins\platforms 這個文件夾,把這個文件夾拷貝到和.exe文件一個路徑下,出現想要的程序了。
4
最后
好的,本期更完!幫助文檔上的內容非常豐富,建議多看看。
如果你喜歡本篇文章,請給我點贊
贊賞(推薦
)
分享給你的好友們吧!
歡迎關注微信公眾號:學點編程吧,發送pyqt575,可以獲得計算器的源碼。加油!
(? ??_??)? (*????)?
點點最下方的廣告也是一種支持啊~!
加入我們的學習交流QQ群,一起學習吧!
看完本文有收獲?請轉發分享給更多人
猜你喜歡:
更多的PyQt5文章請在微信公眾號/在線課程/圖文教程中查找。
總結
以上是生活随笔為你收集整理的python安装pyqt5 qml_PyQt5:PyQt5程序打包2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓代码拉下来编译后怎么运行_支付宝秒开
- 下一篇: 贷款收入证明范本