python 生成exe脫離python環境運行

1. 簡介

python 程序編寫完之後需要進行打包成exe發佈,不暴露源碼,目前主要打包的工具有三種:

1) PyInstaller(推薦)

2) cx_Freeze

3) py2exe

PyInstaller參考文檔

py2exe參考文檔

這裏,我主要介紹PyInstaller的安裝使用。

2. PyInstaller

1) 離線安裝:

PyInstaller下載,只需解壓到位置即可(建議和python放在相同的目錄下)。

pywin32下載,雙擊pywin32-221.win-amd64-py3.5.exe安裝,注意安裝的時候會自動檢測之前安裝的Python,下一步安裝。

在CMD命令行進入Python安裝目錄下的Scripts目錄並執行命令:python pywin32_postinstall.py -install

在CMD命令行中進入yInstaller解壓目錄下,然後執行:python setup.py install

2) 在線安裝:

管理員身份打開cmd窗口,執行命令: pip install pyinstaller

安裝完成。

3. 打包樣例

編譯條件指令介紹

-F, --onefile Py代碼只有一個文件
 
-D, --onedir Py代碼放在一個目錄中(默認是這個)
 
-K, --tk 包含TCL/TK
 
-d, --debug 生成debug模式的exe文件
 
-w, --windowed, --noconsole 窗體exe文件(Windows Only)
 
-c, --nowindowed, --console 控制檯exe文件(Windows Only)
 
-X, --upx 使用upx壓縮exe文件
 
-o DIR, --out=DIR 設置spec文件輸出的目錄,默認在PyInstaller同目錄
 
--icon=FILE.ICO  加入圖標(Windows Only)
 
-v FILE, --version=FILE 加入版本信息文件

1) 這裏,我需要打包的py文件:

install.py(主程序入口文件)、env.py、installPKG.py、installDNPS.py、start.py

多個.py文件和多個打包命令格式如下: 

pyinstaller [主文件] -p [其他文件1] -p [其他文件2] --hidden-import [自建模塊1] --hidden-import [自建模塊2]

-w 去除調試黑框

 -i xxx.ico 添加ico圖標,在當前文件夾下就不用加目錄

2) 根據上面的文件結構打包命令如下:

pyinstaller -F install.py -p env.py -p installPKG.py -p installDNPS.py -p start.py 

爲了方便,這裏把打包命令編寫爲bat腳本:

@echo off
echo 當前批處理文件運行路徑:%~dp0
start cmd /k  pyinstaller -F install.py -p env.py -p installPKG.py -p installDNPS.py -p start.py --hidden-import clip --hidden-import data

 3) 執行打包腳本package.bat,在dist目錄下生成exe

4) 脫離python環境運行install.exe

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章