zoukankan      html  css  js  c++  java
  • python实现调用接口案例

    # -*- coding: utf-8 -*-
    """
    Created on Wed Dec 11 08:35:29 2019
    
    @author: xbxia
    """
    
    
    import requests
    import json
    
    
    header = {
            'X-CP-API-ID':'343293f1',
            'X-CP-API-KEY':'7f667830890b4374b8c7',
            'X-ECM-API-ID':'1576580160178',
            'X-ECM-API-KEY':'02:F9:83:D1:6D:D6'
            }
    
    
    #header = {
    #        'X-CP-API-ID':'2e240f3f',
    #        'X-CP-API-KEY':'1ee6ba74f9dd408a85f2',
    #        'X-ECM-API-ID':'1576043811571',
    #        'X-ECM-API-KEY':'02:42:AC:14:00:07'
    #        }
    # 接口服务器IP 端口
    ip = 'wepost.cn/wedora'
    server = '%s'%(ip)
    #ip = '172.16.22.21'
    #port = '50107'
    #server = '%s:%s'%(ip,port)
    
    # 接口请求参数
    mac = '00:50:C2:22:9F:20'
    
    groupId = '2019UG1574834320402'       #DNS_CHECK
    
    
    def save(result):
        
        with open('result.txt', 'a+') as fw_t:
            fw_t.write(result)
            fw_t.write('
    ')
    
         
    def get_AllDeviceList(server,id,header):
        
         print("*****获取所有设备列表文件******")
         save("*****获取所有设备列表文件******")
         url = 'https://%s/monitor/amazon-api/v1/device/devListFile.hd'%(server)
         params = {
            'id':id
            #'id':get_AllDeviceInfo(server,header)
            }
         print("start with downloading file")
         r = requests.get(url, params=params, headers=header)
         with open("DeviceList.zip", "wb") as code:
             code.write(r.content)
         print("download is complete")
         save("download is complete")
    
    
    
    def get_OneDeviceInfo(server,mac,header):
        
         print("*****设备查询_单台设备******")
         save("*****设备查询_单台设备******")
         url = 'https://%s/monitor/amazon-api/v1/device/getSingleDev.hd'%(server)
         params = {
            'mac':mac
            }
         r = requests.get(url, params=params, headers=header)
         print(r.text)
         
         save(r.text)
    
    
    '''
    获取所有设备信息,若传flag=1,则返回所有设备信息;若不传参数,则返回一个id。
    通过id获取设备所有信息文件
    '''
         
    def get_AllDeviceInfo(server,header):
        
         print("*****设备查询_所有设备******".center(100))
         save("*****设备查询_所有设备******".center(100))
         url = 'https://%s/monitor/amazon-api/v1/device/getAllDev.hd'%(server)
         params = {
            'flag':1    #不传参
            }
         r = requests.get(url, params=params, headers=header)
        
         #print(json.loads(r.text)['result']['downLoadUrl'].split('=')[1])
         #print('*********************************')
         #print(params)
         if params != {}:
             print(r.text)
             save(r.text)
         else:
             print(r.text)
             id = json.loads(r.text)['result']['downLoadUrl'].split('=')[-1]
             #print(id)
             save(r.text)
             get_AllDeviceList(server,id,header)   #如果传参为空,就下载设备列表文件
             #print('---------------------------')
    
         
     ##############################################################################
    
    def get_DeviceStatus(server,mac,id,header):
        
         print("*****查询组设备重启状态******")
         save("*****查询组设备重启状态******")
         url = 'https://%s/monitor/amazon-api/v1/device/devRebootInfo.hd'%(server)
         params = {
            #'mac':mac,
            'id':id
           # 'id':post_GroupDeviceReboot(server,groupId,header)
            }
         r = requests.get(url, params=params, headers=header)
         print(r.text) 
         
         save(r.text)
         
    
    def post_OneDeviceReboot(server,mac,header):
        
         print("*****设备重启_单台设备******")
         save("*****设备重启_单台设备******")
         url = 'https://%s/monitor/amazon-api/v1/device/rebootSingleDev.hd'%(server)
         params = {
            'mac':mac
            }
         r = requests.post(url, params=params, headers=header)
         print(r.text)
         save(r.text)
        # print('*********************************')
         id = json.loads(r.text)['result']['id']
    
         #return(id)
         get_DeviceStatus(server,mac,id,header)
         
        
    
    def post_GroupDeviceReboot(server,mac,groupId,header):
        
         print("*****设备重启_组设备******".center(100))
         save("*****设备重启_组设备******".center(100))
         url = 'https://%s/monitor/amazon-api/v1/device/rebootGroupDev.hd'%(server)
         params = {
            'groupId':groupId
            }
         r = requests.post(url, params=params, headers=header)
         print(r.text)
         save(r.text)
         #print('*********************************')
         id = json.loads(r.text)['result']['id']
         #return(id)   #返回任务id
         get_DeviceStatus(server,mac,id,header)
         
             
    
    
    if __name__ == '__main__':
        
        #get_OneDeviceInfo(server,mac,header)
        get_AllDeviceInfo(server,header)
        #post_OneDeviceReboot(server,mac,header)
        #post_GroupDeviceReboot(server,mac,groupId,header)
       
        #get_DeviceStatus(server,mac,1576585002185,header)
  • 相关阅读:
    org.tinygroup.tinydb-数据库开发组件
    org.tinygroup.database-数据库元数据定义
    org.tinygroup.databasebuinstaller-数据库结构及元数据自动创建
    org.tinygroup.dbrouter-数据库分区分表
    org.tinygroup.metadata-元数据定义
    org.tinygroup.jsqlparser-SQL解析器
    org.tinygroup.xmlparser-XML解析器
    四则运算程序扩展:将程序改为java语言,并允许用户输入,对输入结果进行验证
    课堂练习四: 返回一个整数数组中最大子数组的和。
    自动生成四则运算问题的测试
  • 原文地址:https://www.cnblogs.com/relustarry/p/12588521.html
Copyright © 2011-2022 走看看