您的位置:首页 > 编程语言 > Python开发

python调用阿里接口获取ECS资产信息

2017-11-10 10:26 501 查看
阿里官方API链接:https://help.aliyun.com/document_detail/25485.html?spm=5176.doc25484.6.814.K0udwc

脚本如下:

#!/usr/bin/env python
# coding=utf-8
from aliyunsdkcore import client
from aliyunsdkecs.request.v20140526 import DescribeInstancesRequest
import json
import pymysql
import sys

accessKey = sys.argv[5] #参数传入key(阿里控制台获取)
accessSecret = sys.argv[6] #参数传入secret(阿里控制台获取)
region = sys.argv[7] #区域(cn-hangzhou)

if __name__ == '__main__':
# 获得 ecs列表
clt = client.AcsClient(accessKey, accessSecret, region)
request = DescribeInstancesRequest.DescribeInstancesRequest()
request.set_accept_format('json')
request.set_PageSize(100) # 每页条数
request.set_PageNumber(1) # 第几页
# PageNumber, PageSize
response = json.loads(clt.do_action_with_exception(request), encoding='utf-8')
info_list= response.get('Instances').get('Instance')
#遍历获取到的结果
for info in info_list:
assetNo = info.get('InstanceId')
ecsName = info.get('InstanceName')
region = info.get('RegionId')
zone = info.get('ZoneId')
ecsType = info.get('InstanceType')
cpu = str(info.get('Cpu'))
mem = str(info.get('Memory'))
bandWidth = str(info.get('InternetMaxBandwidthOut'));
status = info.get('Status')
if info.get('PublicIpAddress').get('IpAddress'):
ipAddress = info.get('PublicIpAddress').get('IpAddress')
if ipAddress:
ipAddress = ipAddress[0]
else:
ipAddress = ''
innerIpAddress = info.get('InnerIpAddress').get('IpAddress')
if innerIpAddress:
innerIpAddress = innerIpAddress[0]
createTime = info.get('CreationTime')
expiredTime = info.get('ExpiredTime')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: