
1.获取登录密钥#!/usr/bin/env python2.7 #codingutf8 import json import urllib2 #base url and required header username shiye.meng password X api_url http://10.10.6.6/api_jsonrpc.php header {Content-Type:application/json} #username and password data json.dumps( { jsonrpc:2.0, method:user.login, params:{ user:username, password:password }, id:0 }) #create object request requesturllib2.Request(api_url,data) for key in header: request.add_header(key,header[key]) #auth and get authid try: resulturllib2.urlopen(request) except URLError as e: print auth fail else: responsejson.loads(result.read()) result.close() print auth ok,response[result] print response2.执行方法操作#!/usr/bin/env python2.7 #codingutf8 import json import urllib2 #base url and required header username shiye.meng password X api_url http://10.10.6.6/api_jsonrpc.php header {Content-Type:application/json} #username and password data json.dumps( { jsonrpc:2.0, method:host.get, params:{ output:[hostid,name], filter:{host:} }, auth:f2a7cb232fddb30e14fc544c6b09099e, id:1 }) #create object request requesturllib2.Request(api_url,data) for key in header: request.add_header(key,header[key]) #auth and get authid try: resulturllib2.urlopen(request) except URLError as e: print auth fail else: responsejson.loads(result.read()) result.close() # print response print HostNumber:,len(response[result]) for host in response[result]: print HostID:,host[hostid],HostName:,host[name]3.获取维护列表#!/usr/bin/env python2.7 #codingutf8 import datetime import time import json import urllib2 import sys reload(sys) sys.setdefaultencoding(utf8) #time value def timestamp_datetime(value): format%Y-%m-%d %H:%M:%S value time.localtime(float(value)) dt time.strftime(format, value) return dt def datetime_timestamp(dt): time.strptime(dt, %Y-%m-%d %H:%M:%S) s time.mktime(time.strptime(dt, %Y-%m-%d %H:%M:%S)) return int(s) #base url and required header username shiye.meng password X api_url http://10.10.6.6/api_jsonrpc.php header {Content-Type:application/json} #username and password data json.dumps( { jsonrpc:2.0, method:maintenance.get, params:{ output:extend, }, auth:f2a7cb232fddb30e14fc544c6b09099e, id:2 }) #create object request requesturllib2.Request(api_url,data) for key in header: request.add_header(key,header[key]) #auth and get authid try: resulturllib2.urlopen(request) except URLError as e: print fail else: responsejson.loads(result.read()) result.close() #print json.dumps(response,indent4) for mt in response[result]: #print StartTime:,mt[active_till],Name:,mt[name].decode(utf-8).encode(gb2312) print StartTime:,timestamp_datetime(mt[active_till]),EndTime:,timestamp_datetime(mt[active_since]),Name:,mt[name]