python運維接口調用示例
阿新 • • 發佈:2017-06-06
python
示例1
以調用 ccmsuser 接口為例。
test.py:
示例代碼:獲取ccms用戶列表
import requests import json def 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 requests import json import 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 requests import json import 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運維接口調用示例