python專案庫環境安裝自動化
阿新 • • 發佈:2020-12-21
技術標籤:python
新建配置檔案
在配置檔案中寫上自己想要或者用到的第三方庫,配置檔案格式為.ini格式
如圖:
讀取配置檔案
fo=open('./config.ini','r') #開啟檔案物件
lines=fo.read().splitlines() # 讀取檔案中每列內容
print(lines)
檢視本地已經安裝的第三方庫
BackInfo=os.popen('pip list')
info=BackInfo.read()
print(info)
遍歷從配置檔案中讀取的第三方庫名字,並進行判斷是否已安裝,若已安裝,提示該庫已存在,若沒有安裝,則進行安裝,並提示安裝成功或者失敗
for line in lines:
if line in info:
print(f"{line} is existed")
else:
pipObj=os.popen('pip install '+line)
pipRes=pipObj.read()
if 'Successfully' in pipRes:
print(f'{line} is success')
else:
print(f'{line} is fail')
加上日誌檔案,全部程式碼如下
import os
import logging
LOG_FORMAT="%(asctime)s - %(levelname)s - %(message)s"
DATA_FORMAT="%Y-%m-%d %H:%M:%S"
LOG_DIR='./auto_install.log'
logging.basicConfig(filename=LOG_DIR,level=logging.DEBUG,format=LOG_FORMAT,datefmt=DATA_FORMAT)
#讀取配置檔案
fo=open('./config.ini','r') #開啟檔案物件
lines=fo.read().splitlines() # 讀取檔案中每列內容
print(lines)
#檢視本地已安裝的第三方庫
BackInfo=os.popen('pip list')
info=BackInfo.read()
print(info)
for line in lines:
if line in info:
print(f"{line} is existed")
logging.warning(f"{line} is existed")
else:
pipObj=os.popen('pip install '+line)
pipRes=pipObj.read()
if 'Successfully' in pipRes:
print(f'{line} is success')
logging.info(f'{line} is success')
else:
print(f'{line} is fail')
logging.error(f'{line} is fail')
至此,第三方庫環境安裝的自動化已經全部完成