1. 程式人生 > >python3.6 使用pyinstaller 打包web程序的方法

python3.6 使用pyinstaller 打包web程序的方法

圖標 擔心 窗口 ins static web服務 win 連接 相對

官方文檔連接 (https://pyinstaller.readthedocs.io/en/stable/ )

第一步,下載pywin32

首先下載pywin32,下面是下載鏈接,下載自己的系統版本對應的pywin32

https://github.com/mhammond/pywin32/releases

第二步,安裝pyinstaller

pip install pyinstaller

第三步,打包程序

命令參數

參數 描述
-F 表示生成單個可執行文件
-w 表示去掉控制臺窗口,這在GUI界面時非常有用。如果不適用這個參數,則在運行打包後的exe時,會有一個命令行窗口,顯示控制臺輸出
-p 表示你自己自定義需要加載的類路徑,一般情況下用不到
-i 表示可執行文件的圖標

進入虛擬環境後,使用命令

命令

pyinstaller -F myfile.py

其他命令示例

    pyinstaller  -F  -w -i ..\7.ico  run.py  a.py

上面命令的意思是
將當前目錄下的run.py 和a.py 打包成一個(-F)exe文件,運行時不顯示控制臺窗口(-w),指定exe文件的圖標(-i)為當前目錄的父級目錄(..\7.ico)下的7.ico對應的圖標

註意事項

  • 圖標好像必須要是.ico格式,我使用.icns格式的圖標會報錯,目前不知道原因
  • web服務如果需要html、css等靜態文件,可以按照項目結構,將對應的templates和static目錄復制到打包後的exe文件所在目錄下,就可以正常執行(具體得看你使用的web框架配置的靜態文件路徑與運行文件相對位置是怎樣的)
  • 一般情況下,我們每個項目都有自己的虛擬環境,打包exe文件時會把虛擬環境下的其他庫一起打包進exe文件中,所以不用擔心如何將其他庫引入打包,當然你也可以選擇把源碼全部復制到項目目錄下,在使用命令打包時,把它們都指定上(如果不嫌累的話)

python3.6 使用pyinstaller 打包web程序的方法