Python DNS查找

将IP地址转换为可读格式或单词后,便称为域名。域名到IP地址的转换由python模块dnspython管理。该模块还提供了查找CNAME和MX记录的方法。

1. 查找“ A”记录

在下面的程序中,我们使用dns.resolver方法找到该域的IP地址。通常,IP地址和域名之间的这种映射也称为“A”记录。

 
# Filename : example.py# Copyright : 2020 By Aizws# Author by : www.aizws.net# Date : 2020-08-25import dnspython as dns import dns.resolver result = dns.resolver.query('aizws.net', 'A') for ipval in result:     print('IP', ipval.to_text())  
 

运行上面示例代码,得到以下结果:

 
# Filename : example.py# Copyright : 2020 By Aizws# Author by : www.aizws.net# Date : 2020-08-25('IP', u'59.110.239.6')  
 

2. 查找CNAME值

CNAME记录也称为规范名称记录,是域名系统(DNS)中的一种记录类型,用于将域名映射为另一个域的别名。CNAME记录始终指向另一个域名,并不能直接为IP地址。在下面的查询方法中,我们指定CNAME参数以获取CNAME值。

 
# Filename : example.py# Copyright : 2020 By Aizws# Author by : www.aizws.net# Date : 2020-08-25import 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 Aizws# Author by : www.aizws.net# Date : 2020-08-25cname target address: googlemail.l.google.com.  
 

3. 查找MX记录

MX记录(也称为邮件交换器记录)是域名系统中的资源记录,它指定负责代表接收者域的电子邮件消息的邮件服务器。如果有多个邮件服务器可用,它还会设置优先级值,该优先级值用于优先安排邮件传递。与上述程序类似,可以在查询方法中使用“MX”参数找到MX记录的值。

 
# Filename : example.py# Copyright : 2020 By Aizws# Author by : www.aizws.net# Date : 2020-08-25result = dns.resolver.query('mail.google.com', 'MX') for exdata in result:     print ' MX Record:', exdata.exchange.text()  
 

运行上面示例代码,得到以下结果:

 
# Filename : example.py# Copyright : 2020 By Aizws# Author by : www.aizws.net# Date : 2020-08-25MX Record: ASPMX.L.GOOGLE.COM. MX Record: ALT1.ASPMX.L.GOOGLE.COM. MX Record: ALT2.ASPMX.L.GOOGLE.COM.  
 

以上是示例输出,而不是确切的输出。

下一章:Python 路由

路由是将URL直接映射到创建网页的代码的机制。它有助于更好地管理网页的结构,并显着提高网站的性能,并且进一步的增强或修改将变得非常简单。在python中,路由是在大多数网络框架中实现的。我们将在本章中看到flask We ...