python 的 dnspython 模块,可以用来对域名进行诸如 A 记录、MX 记录、CNAME 记录等解析操作。
安装
python3 安装
pip3 install dnspython3
python2 安装
pip install dnspython
使用
查询A 记录 IP
#!/usr/bin/python3 #-*_coding:utf-8-*-
import dns.resolver
defdnsresolver(domain):
try: domain = dns.resolver.query(domain,"A") for domain in domain.response.answer: for ip in domain.items: if ip.rdtype == 1: print("该域名解析的IP地址是:"+ip.address) else: pass except: print("解析错误:域名参数不正确")
dnsresolver('www.baidu.com')
ß
和dig 查询的A记录地址是一样的
1.查询CNAME
#!/usr/bin/python3 #-*_coding:utf-8-*-
import dns.resolver
defdnsresolver(domain):
try: domain = dns.resolver.query(domain,"CNAME") for domain in domain.response.answer: for ip in domain.items: #rdtype 为1 表示是A记录 print("该域名解析的IP地址是:"+ip.to_text()) except: print("解析错误:域名参数不正确")