东坡下载:内容最丰富最安全的下载站!

帮助|文件类型库|最新更新|下载分类|排行榜

编程相关破解相关编程工具反编译安装制作程序源码软件补丁数据库Visual Studiovc++visualbasicdreamweaver

首页编程开发编程相关 → python dns解析文件(dnspython) 1.12.0 最新版【windows+linux】

python dns解析文件(dnspython)

python dns解析文件(dnspython)1.12.0 最新版【windows+linux】

  • 大小:345KB
  • 语言:中文
  • 平台:WinAll, linux
  • 更新:2016-01-04 16:51
  • 等级:
  • 类型:编程相关
  • 网站:http://www.dnspython.org/
  • 授权:免费软件
  • 厂商:
  • 产地:国产软件
好用好玩 50%(0)
坑爹 坑爹 50%(0)
软件介绍软件截图相关软件软件教程网友评论下载地址

dnspython是在python下的dns解析文件。它支持几乎所有的记录类型,可以用于查询、传输并动态更新ZONE信息,同时支持TSIG(事务签名)验证消息和EDNS0(扩展DNS)。小编这里给大家带来windows和linux版本两种版本,需要的下!

dnspython是什么

dnspython是Python的一个DNS工具包。它支持几乎所有的记录类型。它可以用于查询、区域转移和动态更新。它支持TSIG验证消息和EDNS0。

dnspython提供了高和低水平访问DNS。高水平类执行查询数据给定的名称、类型和类,并返回一组回答。低水平类允许DNS区域的直接操纵,信息,名字,和记录。

看到几个dnspython可用的方法,访问页面的示例。

dnspython起源在Nominum那里发达促进DNS软件的测试。Nominum慷慨地允许它在bsd风格的开源许可证,并帮助支持其未来发展通过继续采用作者:)。

dnspython安装使用方法

这里采用源码的安装方式,最新版本为1.12.0,如下:

# http://www.dnspython.org/kits/1.12.0/dnspython-1.12.0.tar.gz  

# tar -zxvf dnspython-1.12.0.tar.gz  

# cd dnspython-1.12.0  

# python setup.py install 

对域名进行操作

域名是 DNS 系统中最基本的对象。

dnspython 通过类 dns.name.Name 提供了对域名信息进行封装。

对于类 dns.name.Name 的实例,我们可以进行一些操作。

请看下面的例子(已经准备好了交互式 Python 环境了吗):

>>> import dns.name

>>> n1 = dns.name.from_text('google.com')

>>> print type(n1)

<class 'dns.name.Name'>

首先,我们导入模块 dns.name。

通过函数 dns.name.from_text(),我们很方便的从字符串 google.com 创建了一个类 dns.name.Name 的实例。

随后,我们通过 type() 函数证实了这一点。

让我们再创建几个类 dns.name.Name 的实例。

>>> n0 = dns.name.from_text('com')

>>> n2 = dns.name.from_text('www.google.com')

>>> n3 = dns.name.from_text('www.google.cn')

类 dns.name.Name 的方法 is_subdomain() 和 is_superdomain 可以帮助我们判读一个域名是否是另一个域名的子域或者超域。

>>> n0.is_superdomain(n2)

True

>>> n0.is_superdomain(n3)

False

>>> n2.is_subdomain(n1)

True

>>> n3.is_subdomain(n1)

False

>>> n1.is_subdomain(n1)

True

>>> n1.is_superdomain(n1)

True

通过上面的例子我们看到,com 是 www.google.com 的 super domain,不是 www.google.cn 的 super domain。反过来说,www.google.com是 com 的 subdoamin 成立,而 www.google.cn 是 com 的 subdomain 不成立。

我们还意识到一个 dns.name.Name 总是自己的 super domain 和 subdomain。

让我们看看如何处理域名间的相对关系:

>>> r1 = n2.relativize(n1)

>>> print r1

www

>>> r2 = n2 - n1

>>> r1 == r2

True

我们看到,通过 relativize() 方法可以获得一个域名相对其 superdomain 的部分,例如 n2 相对 n1 的部分是 www。

我们也可以使用减(-)操作得到等价结果。那么,是否可以使用加(+)操作处理域名呢?

>>> r1 + n1 == n2

True

答案是肯定的。

dnspython 增删改查记录

操作

dic.clear() 清除字典

dic.keys() 获取键的列表

dic.values() 获取值的列表

dic.copy() 复制字典

dic.pop(k) 删除键k

dic.get(k) 得到键k的值

dic.update() 更新成员,若成员不在,相当于添加

dic.items() 获得由键和值组成的列表

dic.popitem() 随机删除一个键值对,并将其返回

实例

d = {'name':'LBJ','age':23,'addr':'BeiJing'}

print 'd=',d #显示结果:d= {'age': 23, 'name': 'LBJ', 'addr': 'BeiJing'}

d.clear() ;

print 'd=',d #显示结果:d= {}

d.update({'name':'LBJ','age':23,'addr':'BeiJing'})

print 'd=',d #显示结果:d= {'age': 23, 'name': 'LBJ', 'addr': 'BeiJing'}

print 'd.keys()=',d.keys() #显示结果:d.keys()= ['age', 'name', 'addr']

print 'd.values()=',d.values() #显示结果:d.values()= [23, 'LBJ', 'BeiJing']

d2 = d.copy()

print 'd2=',d2 #显示结果:d2= {'age': 23, 'name': 'LBJ', 'addr': 'BeiJing'}

print 'd.popitem()=',d.popitem() #显示结果:d.popitem()= ('age', 23)

print 'd=',d #显示结果:d= {'name': 'LBJ', 'addr': 'BeiJing'}

PC官方
安卓官方手机版
IOS官方手机版

python dns解析文件(dnspython)截图

下载地址

python dns解析文件(dnspython) 1.12.0 最新版【windows+linux】

热门评论
最新评论
昵称:
表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲
字数: 0/500 (您的评论需要经过审核才能显示)

编辑推荐

报错

请简要描述您遇到的错误,我们将尽快予以修正。

转帖到论坛
轮坛转帖HTML方式

轮坛转帖UBB方式