| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- # -*- coding: utf-8 -*-
- # This file is auto-generated, don't edit it. Thanks.
- import json
- import sys
- import pandas as pd
- from typing import List
- from alibabacloud_alidns20150109.client import Client as Alidns20150109Client
- from alibabacloud_tea_openapi import models as open_api_models
- from alibabacloud_alidns20150109 import models as alidns_20150109_models
- from alibabacloud_tea_util import models as util_models
- from alibabacloud_tea_util.client import Client as UtilClient
- class Sample:
- def __init__(self):
- pass
- @staticmethod
- def create_client_domain(
- access_key_id: str,
- access_key_secret: str,
- ) -> Alidns20150109Client:
- config = open_api_models.Config(
- # 必填,您的 AccessKey ID,
- access_key_id=access_key_id,
- # 必填,您的 AccessKey Secret,
- access_key_secret=access_key_secret
- )
- # 访问的域名
- config.endpoint = f'alidns.cn-beijing.aliyuncs.com'
- return Alidns20150109Client(config)
- @staticmethod
- def domain_list(accessKeyId, accessKeySecret):
- domainlist = []
- domain_info = []
- client = Sample.create_client_domain(accessKeyId, accessKeySecret)
- describe_domains_request = alidns_20150109_models.DescribeDomainsRequest(page_size=100)
- runtime = util_models.RuntimeOptions()
- try:
- resp = client.describe_domains_with_options(describe_domains_request, runtime)
- data = json.loads((UtilClient.to_jsonstring(resp)))
- if data["statusCode"] == 200:
- target = data["body"]["Domains"]["Domain"]
- for des in target:
- domainlist.append(des["DomainName"])
- except Exception as error:
- UtilClient.assert_as_string(error)
- for i in domainlist:
- print(i)
- describe_domain_records_request = alidns_20150109_models.DescribeDomainRecordsRequest(
- domain_name=i,
- type='A',
- page_size=500
- )
- try:
- resp = client.describe_domain_records_with_options(describe_domain_records_request, runtime)
- data = json.loads((UtilClient.to_jsonstring(resp)))
- if data["statusCode"] == 200:
- target = data["body"]["DomainRecords"]["Record"]
- for des in target:
- if "Remark" in des:
- Describe_dict = {
- "主域名": des["DomainName"],
- "二级域名": des["RR"],
- "备注": des["Remark"],
- "域名": f'''{des["RR"]}.{des["DomainName"]}''',
- "解析IP": des["Value"]}
- domain_info.append(Describe_dict)
- else:
- Describe_dict = {
- "主域名": des["DomainName"],
- "二级域名": des["RR"],
- "备注": f'无备注信息',
- "域名": f'''{des["RR"]}.{des["DomainName"]}''',
- "解析IP": des["Value"]}
- domain_info.append(Describe_dict)
- except Exception as error:
- UtilClient.assert_as_string(error)
- df = pd.DataFrame(domain_info)
- df.to_excel('output.xlsx', index=False)
- @staticmethod
- def main():
- print("start")
- if __name__ == '__main__':
- Sample.domain_list("id","key")
|