gpt4 book ai didi

python - 在 python 中使用 dig 命令

转载 作者:IT老高 更新时间:2023-10-28 21:06:28 64 4
gpt4 key购买 nike

只是一个警告,我的 Python 技能几乎不存在,但我正在努力学习。

我在周末通过我们的 DNS 控制面板对大约 58 个 CNAMES 进行了一些更改(只是更改了目标)

与其检查每个单独记录的更改是否已经生效,我想知道是否有一种方法可以为 python 中的每个 CNAME 编写一个挖掘列表?

我使用的 dig 命令是这样的

dig @ns1.netnames.net www.rac.co.uk CNAME

我希望看到 rac-secure.gslb2.rac.co.uk 返回。

我尝试了类似的方法:

import os
os.system( 'dig<exampledomain.com>'CNAME )

但这似乎不起作用(正如我提到的我缺乏 python 技能),我是在正确的道路上,还是应该使用类似 dnspython 的东西?我之前在堆栈溢出社区的(很多)帮助下使用过 dnspython 模块,但我发现文档真的很困惑。

任何正确方向的指针将不胜感激。

问候

克里斯。

最佳答案

很可能从 python 调用 dig,它可能会节省你的工作,只使用 python 库。看看dnspython这可能会让一切变得更容易——而且您不必解析输出格式。

import socket
import dns.resolver

# Basic query
for rdata in dns.resolver.query('www.yahoo.com', 'CNAME') :
print rdata.target

# Set the DNS Server
resolver = dns.resolver.Resolver()
resolver.nameservers=[socket.gethostbyname('ns1.cisco.com')]
for rdata in resolver.query('www.yahoo.com', 'CNAME') :
print rdata.target

关于python - 在 python 中使用 dig 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5235569/

64 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com