python学习-dnspython
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python学习-dnspython,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1760字,纯文字阅读大概需要3分钟。
内容图文
![python学习-dnspython](/upload/InfoBanner/zyjiaocheng/1082/ef573969717542119fbb93850c0d7e9a.jpg)
dnspython提供对DNS的高级和低级访问。高级别类对给定名称,类型和类的数据执行查询,并返回答案集。低级别类允许直接操作DNS区域,消息,名称和记录。
官方网站:http://www.dnspython.org/
#! /env python3 #coding=utf-8 ''' 模块域名解析方法: dnspthon提供了一个DNS解析器类-resolver,使用query方法实现域名查询功能 方法定义如下: query(self,qname,rdtpye=1,rdclass=1,tcp=False,source=None,rasie_on_no_answer=True,source_port=0) 其中qname参数为查询的域名。rdtpye参数指定RR资源类型,常用有以下几种 A记录,将主机名转换为IP地址; MX记录,邮件交换机记录,定义邮件服务器的域名; CNAME记录,指别名记录,实现域名间的映射; NS记录,标记区域的域名服务器及授权子域; PTR记录,方向解析,与A记录相反,将IP转换为主机名; SOA记录,SOA标记,一个起始授权区的定义 rdclass参数用于指定网络类型,可选的值有IN,CH与HS,其中IN为默认,使用最广泛 tcp参数用于指定查询是否启用了TCP协议,默认是 False不启用。 source与source_port参数作为指定查询的源地址与端口,默认为查询设备IP地址和0. rasie_on_on_answer=True参数指定当查询无应答时是否触发异常 ''' ''' 常见的解析类型-A记录,实现A记录查询方法 ''' import dns.resolver domain = input('Please input an domain: ') #输入域名地址 A = dns.resolver.query(domain, 'A') #指定查询类型为A记录 for i in A.response.answer: #通过response.answer方法获取查询回应信息 for j in i.items: #遍历回应信息 print (j) ''' 常见的解析类型-MX记录 ''' import dns.resolver domain = input('Please input an domain: ') #指定域名为163.com MX = dns.resolver.query(domain, 'MX') #指定查询类型为MX记录 for i in MX: #遍历回应结果,输出MX记录的preference及exchanger信息 print ('MX preference =', i.preference, 'mail exchanger =', i.exchange) ''' 常见的解析类型-NS记录 ''' import dns.resolver domain = input('Please input an domain: ') #只限输入一级域名,如163.com ns = dns.resolver.query(domain, 'NS') #指定查询类型为NS for i in ns.response.answer: for j in i.items: print(j.to_text()) ''' 常见的解析类型-CNAME记录 ''' import dns.resolver domain = input('Please input an domain: ') #指定查询类型为CNAME记录 cname = dns.resolver.query(domain, 'CNAME') #结果将回应cname后的目标信息 for i in cname.response.answer: for j in i.items: print (j.to_text())
原文:http://blog.51cto.com/11555417/2088216
内容总结
以上是互联网集市为您收集整理的python学习-dnspython全部内容,希望文章能够帮你解决python学习-dnspython所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。