返回顶部
首页 > 资讯 > 后端开发 > Python >python学习-dnspython
  • 933
分享到

python学习-dnspython

pythondnspython 2023-01-31 07:01:32 933人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

dnspython是python的DNS工具包。它支持几乎所有的记录类型。它可以用于查询,区域传输和动态更新。它支持TSIG认证消息和EDNS0。dnspython提供对DNS的高级和低级访问。高级别类对给定名称,类型和类的数据执行查询,并

dnspythonpython的DNS工具包。它支持几乎所有的记录类型。它可以用于查询,区域传输和动态更新。它支持TSIG认证消息和EDNS0。

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())


--结束END--

本文标题: python学习-dnspython

本文链接: https://lsjlt.com/news/191425.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python学习-dnspython
    dnspython是Python的DNS工具包。它支持几乎所有的记录类型。它可以用于查询,区域传输和动态更新。它支持TSIG认证消息和EDNS0。dnspython提供对DNS的高级和低级访问。高级别类对给定名称,类型和类的数据执行查询,并...
    99+
    2023-01-31
    python dnspython
  • Python模块域名dnspython解析
    目录dnspython源码安装python模块域名解析方法讲解总结dnspython是python实现的一个DNS工具包,它支持记录类型、查询、传输并动态更新ZONE信息等等。据说d...
    99+
    2024-04-02
  • Python学习
    Python是创始人吉多•范罗苏姆(Guido van Rossum)在1989年圣诞节期间,在阿姆斯特丹,为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,而在给自己新创造的计算机语言起名字的时候,由于其是,自于七十年代风靡全球的英国六...
    99+
    2023-01-31
    Python
  • Python 学习
    第一次学习python查阅的资料一,熟悉基本在正式介绍python之前,了解下面两个基本操作对后面的学习是有好处的:1)基本的输入输出 可以在Python中使用+、-、*、/直接进行四则运算。11+3*3查看全部10(2)导入模块 使用im...
    99+
    2023-01-31
    Python
  • 学习python
    亲爱的朋友:     欢迎你!很高兴能在这里见到你,你能来到这里说明你真的很喜欢python,很想把python给学好!我觉的你很幸运,开始我学python的时候比较少资料,学起来也比较头疼,现在随着python越来越流行,资料也越来越多,...
    99+
    2023-01-31
    python
  • Python学习:Python form
    从Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。基本语法是通过 {} 和 : 来代替以前的 % 。 相对基本格式化输出采用‘%’的方法,format()功能更强大,该...
    99+
    2023-01-31
    Python form
  • python学习笔记--趣学Python
    由反弹球和球拍构成的游戏。球会在屏幕上飞过来,玩家要用球拍把它弹回去 画布和画弹球 引入模块 #Tkinter -- Python的标准GUI库,Tk 接口,是python 内置的安装包 from tkinter import * i...
    99+
    2023-01-31
    学习笔记 python Python
  • python学习--DataFrame
    目录 一、DataFrame对象的创建 1、根据列表创建: 情况1:由二维列表 情况2:由元组tuple组成的列表 情况3:由字典dict组成的列表 情况4:由数组array组成的列表 情况5:由序列series组成的列表 2、根据字典创...
    99+
    2023-10-02
    python 开发语言 pandas
  • Python学习 (1)
    一、基本语法: import 与 from...import 在 python中 用import 或者from...import 来导入相应的模块。 将整个模块(somemodule)导入,格式为:import somemodule 从...
    99+
    2023-01-30
    Python
  • python学习(二)
    #浏览器GET请求,发送的参数有中文时,需要编码再拼接参数发送from urllib import requestimport urlliburl = r"http://www.baidu.com/s"#百度搜索 浏览器userage...
    99+
    2023-01-31
    python
  • Python学习day01
    age = 23 count=0 while count<3: guess_age = int (input("My age:")) if age ==guess_age: print("n...
    99+
    2023-01-30
    Python
  • python学习_1
    1.python2和python3 从宏观上讲,python2源码不标准、混乱、重复,和龟叔的理念背道而驰。 在python3上,实现了源码的统一化和标准化,去除了重复的代码。   2.编译型语言和解释型语言 编译型:一次性将所有的程序编...
    99+
    2023-01-30
    python
  • python-flask学习
    学习了一段时间python之后,因为一些现实要求和个人学习需要,所以开始对flask进行学习。找了一些博客和一本书《Flask Web开发》,书还没怎么仔细看,目前跟着博客学,还是有一些收获。下面将我觉得写的比较好的博客推荐一下。 duk...
    99+
    2023-01-30
    python flask
  • Python学习:ModuleNotFo
    最近在学《Python编程:从入门到实践》,16.2小结中 from pygal.i18n import COUNTRIES 获取两个字母的国别码,我用的pygal的版本是2.4.0(终端 pip show pygal 查看版本) 这...
    99+
    2023-01-31
    Python ModuleNotFo
  • 学习python D1
    shell脚本最擅长移动文件和替换文本,并不适合GUI界面或者游戏开发,Python是一种解释型语言,在程序开发阶段可以为你节省大量时间 Python2的用户输入需要用raw_input()而非input() python这种变量本身类...
    99+
    2023-01-31
    python
  • python学习_18
    字典字典是无序的字典的key只能是不可变对象,不能是list dict创建字典创建空字典,并赋值 d = {}d["name"] = "huhongqiang"d["sex"] = "M"d["height"] = 170d{'nam...
    99+
    2023-01-31
    python
  • python学习(11)
    函数参数 位置参数传入参数顺序 、个数必须一致def add(a,b):return a + b 关键字参数 def add(a,b,c):... return a+b+c...print(add(c=1,b=2,a=3))6...
    99+
    2023-01-31
    python
  • python学习(8)
    退出双层循环:方式1:try--except try: for i in range(5): for j in range(5): if i==3 and j ==3: ...
    99+
    2023-01-31
    python
  • python学习_14
    exec(str) 可以执行多行语句,语句块,没有返回值 command = """... a= [1,2,3]... for i in a:... print(i)... """exec(command)123 a = [1...
    99+
    2023-01-31
    python
  • python学习(day3)
    1、集合的使用:#1、集合的操作: list_1 = [1,4,5,7,3,6,7,9] list_1 = set(list_1)#创建集合 list_2 = set([2,6,0,22,66,8,4]) print(list_1,typ...
    99+
    2023-01-31
    python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作