python免安裝版(綠色版)制作


一、實驗環境

1.Windows7x64_SP1

2.pywinauto_0.6.7

二、需求背景

個人編寫了一個軟件安裝器,用於一鍵安裝開發軟件及工具,該工具基於python + pywinauto。

但問題來了,新電腦上未安裝python和圖像界面操作庫pywinauto,難道先手動安裝python + pywinauto,再運行軟件安裝器安裝其他軟件?

有兩種解決方式

2.1 方式一:

使用PyQt制作GUI界面,再使用pyinstaller打包為exe文件,該exe程序可以在未安裝python的電腦上運行。

 

使用該方式,最終發現PyQt庫和pywinauto庫沖突,可以正常打包,但exe程序運行報錯,打開控制台窗口,窗口提示“ImportError:The 'appdirs' package is required”。

本打算在github上向pywinauto的作者發帖提問,為方便其復現問題,手動編寫圖形化界面(未使用Qt設計師),程序運行正常!得出結論是Qt設計師編寫的代碼與pywinauto庫存在沖突。

2.2 方式二:

 使用綠色版python,在cmd中調用軟件安裝器,這樣就可以安裝python及相關軟件和工具。

 

三、實驗步驟

3.1 下載python release版

下載鏈接請參考如下,下載其中的python-3.7.3rc1-embed-win32.zip

https://www.python.org/ftp/python/3.7.3/

解壓后目錄結構如下:

聰明的小伙伴估計已經發現,https://www.python.org/ftp/python/ 可以下載所有版本的python

 

3.2 安裝pip

下載get-pip.py文件至步驟3.1解壓后的目錄,get-pip.py文件下載方式參考如下:

https://pip.pypa.io/en/stable/installing/鏈接另存為即可

在當前目錄下打開cmd,輸入命令“python get-pip.py”並敲擊回車運行命令,安裝完成后,文件夾中會增加LibScripts兩個文件夾

3.3 修改python37._pth文件

記事本打開python37._pth,去除import site的注釋,最終修改如下:

python37.zip
.

# Uncomment to run site.main() automatically
import site

3.4 安裝lib

3.4.1 查看已安裝lib

運行cmd,目錄切換至python-3.7.3rc1-embed-win32,輸入python.exe .\Scripts\pip3.exe list,結果如下:

D:\software\python-3.7.3rc1-embed-win32>python.exe .\Scripts\pip3.exe list
Package    Version
---------- -------
pip        19.2.1
pywin32    224
pywinauto  0.6.7
setuptools 41.0.1
six        1.12.0
wheel      0.33.4

3.4.2 安裝新lib

以安裝django為例,輸入python.exe .\Scripts\pip3.exe install django==1.10.1

D:\software\python-3.7.3rc1-embed-win32>python.exe .\Scripts\pip3.exe install django==1.10.1

3.5 運行python

D:\software\python-3.7.3rc1-embed-win32>python
Python 3.7.3rc1 (tags/v3.7.3rc1:69785b2127, Mar 12 2019, 21:42:06) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM