如何使用Boto 3获取域的托管区域?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Boto 3获取域的托管区域?相关的知识,希望对你有一定的参考价值。

Boto 2,我可以获得一个与域domain相关联的托管区域

r53_2 = boto.route53.connection.Route53Connection()
hz = r53_2.get_zone(domain)

但在Boto 3corresponding API需要一个ID而不是域名

r53_3 = boto3.client('route53')
hz = r53_3.get_hosted_zone(id)

我没有看到任何方式从域名中获取ID,这是我有权访问的。

如何使用Boto 3获取域的托管区域?

答案

我现在无法测试这个,但你可以使用.list_hosted_zones()

您需要解析结果,但这是一个开始。

RL

另一答案

也许这个例子会有所帮助......

    r53 = boto3.client('route53')
    zones = r53.list_hosted_zones_by_name(DNSName=domain)
    if not zones or len(zones['HostedZones']) == 0:
        raise Exception("Could not find DNS zone to update")
    zone_id = zones['HostedZones'][0]['Id']

以上是关于如何使用Boto 3获取域的托管区域?的主要内容,如果未能解决你的问题,请参考以下文章