1. 程式人生 > >python在windows上呼叫 kettle

python在windows上呼叫 kettle

python在windows上呼叫 kettle

原理是python呼叫cmd

cmd = 'kitchen.bat -rep=kettle_repo -user=admin -pass=admin -dir=/job -job=material_inventory "-param:t_date=\'2018-01-01\'" -level=Error' 
os.system(cmd)

rep為資源庫
dir為目錄
job為任務名
param為引數

由於這個job每次只能跑一天的資料,一次次的輸引數很麻煩,所以這裡用python寫個時間迴圈,來呼叫kettle.

整體程式碼如下

import os, datetime
import pandas as pd
start = '2018-11-01'
end = (datetime.datetime.now()-datetime.timedelta(days=1)).strftime('%Y-%m-%d')
date_start = datetime.datetime.strptime(start, '%Y-%m-%d')
date_end = datetime.datetime.strptime(end, '%Y-%m-%d')
for i in pd.date_range(datestart, dateend):
    cmd = 'kitchen.bat -rep=yao -user=admin -pass=admin -dir=/job -job=material_inventory "-param:t_date=\'%s\'" -level=Error' % (i)
    os.system(cmd)