Python DNS查找
Python DNS查找
将IP地址转换为可读格式或单词后,便称为域名。域名到IP地址的转换由python模块dnspython管理。该模块还提供了查找CNAME和MX记录的方法。
1. 查找“ A”记录
在下面的程序中,我们使用dns.resolver方法找到该域的IP地址。通常,IP地址和域名之间的这种映射也称为“A”记录。
# Filename : example.py # Copyright : 2020 By Codebaoku # Author by : www.yapf.com # Date : 2020-08-25 import dnspython as dns import dns.resolver result = dns.resolver.query('yapf.com', 'A') for ipval in result: print('IP', ipval.to_text())
运行上面示例代码,得到以下结果:
# Filename : example.py # Copyright : 2020 By Codebaoku # Author by : www.yapf.com # Date : 2020-08-25 ('IP', u'59.110.239.6')
2. 查找CNAME值
CNAME记录也称为规范名称记录,是域名系统(DNS)中的一种记录类型,用于将域名映射为另一个域的别名。CNAME记录始终指向另一个域名,并不能直接为IP地址。在下面的查询方法中,我们指定CNAME参数以获取CNAME值。
# Filename : example.py # Copyright : 2020 By Codebaoku # Author by : www.yapf.com # Date : 2020-08-25 import dnspython as dns import dns.resolver result = dns.resolver.query('mail.google.com', 'CNAME') for cnameval in result: print ' cname target address:', cnameval.target
运行上面示例代码,得到以下结果:
# Filename : example.py # Copyright : 2020 By Codebaoku # Author by : www.yapf.com # Date : 2020-08-25 cname target address: googlemail.l.google.com.
3. 查找MX记录
MX记录(也称为邮件交换器记录)是域名系统中的资源记录,它指定负责代表接收者域的电子邮件消息的邮件服务器。如果有多个邮件服务器可用,它还会设置优先级值,该优先级值用于优先安排邮件传递。与上述程序类似,可以在查询方法中使用“MX”参数找到MX记录的值。
# Filename : example.py # Copyright : 2020 By Codebaoku # Author by : www.yapf.com # Date : 2020-08-25 result = dns.resolver.query('mail.google.com', 'MX') for exdata in result: print ' MX Record:', exdata.exchange.text()
运行上面示例代码,得到以下结果:
# Filename : example.py # Copyright : 2020 By Codebaoku # Author by : www.yapf.com # Date : 2020-08-25 MX Record: ASPMX.L.GOOGLE.COM. MX Record: ALT1.ASPMX.L.GOOGLE.COM. MX Record: ALT2.ASPMX.L.GOOGLE.COM.
以上是示例输出,而不是确切的输出。
相关文章
- python如何遍历字符串中每一个字符
- Python的gtts库将文字转为音频应该如何操作
- Python异步怎么使用等待有时间限制协程
- Python异步之怎么保护任务免于取消
- python中的Pyperclip模块功能是什么
- Python异步之生成器怎么使用
- Python 开发环境
- Python 自定义HTTP请求
- Python 请求状态代码
- Python Socket程序
- Python HTTP客户端
- Python Web表单提交
- Python SMTP
- Python IMAP
- Python FTP
- Python 上传数据
- Python 调试线程应用程序
- Python 线程池
- Python 多处理器
- Python 处理器通信