#!/usr/bin/env python
#coding:utf-8
import os , sys
from time import strftime
from sys import exit
import json ,re
from aliyunsdkcore.client import AcsClient
from aliyunsdkalidns.request.v20150109 import DescribeDomainsRequest,DescribeDomainRecordsRequest,UpdateDomainRecordRequest
from openpyxl import Workbook
import urllib
ID="LTXXXW#SS85VctH"
Secret="rdAMyKKb82KPW4uBLsynUun7n"
RegionId="cn-beijing"
client = AcsClient(ID,Secret,RegionId)
def GetLogin():
req = DescribeDomainsRequest.DescribeDomainsRequest()
#status, headers, body = client.get_response(req)
#status, headers, body = client.do_action_with_exception(acs_request=req)
body = client.do_action_with_exception(req)
print (json.loads(body["Domains"]))
exit()
if status == 200:
pat = re.compile('<DomainName>(.*?)</DomainName>')
DomainName=re.findall(pat, body)
print(DomainName)
return DomainName
else:
print('Unexpected errors: status=%d, error=%s' % (status, body))
def GetDomainList():
DomainList = DescribeDomainsRequest.DescribeDomainsRequest()
DomainList.set_accept_format('json')
try:
DNSListJson = json.loads(client.do_action_with_exception(DomainList))['Domains']['Domain']
#print(DNSListJson['Domains']['Domain'])
DomainNames=[]
for Domain in DNSListJson:
DomainNames.append(Domain['DomainName'])
#print (DomainNames)
return DomainNames
except ValueError as e :
pass
def GetAllDomainRecords(DomainName):
DomainRecords = DescribeDomainRecordsRequest.DescribeDomainRecordsRequest()
DomainRecords.set_accept_format('json')
DomainRecords.set_DomainName(DomainName)
DomainRecordsJson = json.loads(client.do_action_with_exception(DomainRecords))
for x in DomainRecordsJson['DomainRecords']['Record']:
#print(x)
pass
return DomainRecordsJson['DomainRecords']['Record']
def WriteExeclpy(FileName,Records,WorkTable='Sheet1'):
wb = Workbook()
sheet = wb.active
sheet.title = str(WorkTable)
title=list(Records[0].keys())
for m in range(0,len(title)):
#print (title[m])
sheet.cell(row=1, column=int(m+1)).value = '%s' % (title[m])
i = 2
table = {}
for record in Records:
#print (record)
for m in range(0, len(title)):
sheet.cell(row=i, column=int(m + 1)).value = '%s' % (record[title[m]])
i=i+1
wb.save(FileName)
def Test():
pass
if __name__ == '__main__':
GetDomainList()
Records=GetAllDomainRecords('itxxx.cc')
FileName = r'/tmp/execl_test10.xlsx'
#print(Records)
WriteExeclpy(FileName=FileName,Records=Records,WorkTable=strftime('%Y-%m-%d'))
效果图:
亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。