1. 程式人生 > >python運維接口調用示例

python運維接口調用示例

python

示例1

以調用 ccmsuser 接口為例。

test.py:

示例代碼:獲取ccms用戶列表

import requestsimport jsondef get_userlist( appset = ‘all‘, server = ‘all‘ ): url = ‘http://yunwei.fenxibao.com/api/rest/ccmsuser/‘ headers = { ‘content-type‘ : ‘application/json‘ } params = { ‘server‘ : server, ‘appset‘ : appset } list = requests.get( url, params
= params, headers = headers ) return json.loads( list.text )print get_userlist()

以上代碼相當於直接在瀏覽器裏輸入網址 http://yunwei.fenxibao.com/api/rest/ccmsuser/ 訪問

示例2:

修改dns記錄的用樣例

changedns.py

修改dns腳本代碼

import requestsimport jsonimport sys def change_record(domain,ip ): url = ‘http://yunwei.fenxibao.com/api/rest/dns/%s‘
% domain headers = { ‘content-type‘ : ‘application/json‘ } params = { ‘zone‘:‘intranet.fenxibao.com‘,‘auth‘:‘c24c1df7a9cd413acaab379612d633af990dbb69‘, ‘ip‘:ip } list = requests.put( url, params = params, headers = headers ) return json.loads( list.text ) print change_record(sys.argv[
1],sys.argv[2])

調用方法

python changedns.py shousili 192.168.30.45

示例3:

增加dns記錄

adddns.py

增加dns

import requestsimport jsonimport sys def add_record(domain,ip): url = ‘http://yunwei.fenxibao.com/api/rest/dns/‘ params = { ‘zone‘:‘intranet.fenxibao.com‘, ‘auth‘ : ‘c24c1df7a9cd413acaab379612d633af990dbb69‘ } data = { ‘domain‘ : domain, ‘ip‘ : ip } list = requests.post( url, data=data, params=params ) return json.loads( list.text ) print add_record(sys.argv[1],sys.argv[2])

調用方法

python adddns.py shousili 192.168.30.45

註:zone 的值不能隨便修改。比如我們的 ccms 客戶域名一般是 xxxx.ccms.intranet.fenxibao.com 形式,調用的時候需要使用 add_record(‘<客戶名>.ccms‘, ‘<IP>‘) ,註意多出來的 .ccms。 所以我們可能為了方便就把上述腳本中的 zone 改成 ccms.intranet.fenxibao.com,但實際上這會導致錯誤。


python運維接口調用示例