分类: Python/Ruby
2011-02-06 12:38:31
1. socket.getaddrinfo(host,port[, family[, socktype[,proto[,flag]]]] Host参数就是你想查找的域名,其他参数只有当你想把结果直接传递给socket.socket( )或者socket.connect()时才用。这个函数的返回值是一列元组,每一列结果如下: (family, socktype,proto,canonname,sockaddr) Dns_test.py import sys,socket result=socket.getaddrinfo(sys.argv[1],None) print result[0][4] 比如说我们在命令行里输入:Dns_test.py 结果为:(‘121.194.0.206’,0) (我们在C语言中常用到gethostbyname()函数,python中也有socket.gethostbyname(),但是这个函数和IPv6不兼容,所以就不介绍这个啦) 2 反向查询 import sys,socket try: except socket.herror,e: 看几个结果: 如果查不到就会返回失败信息。 3 简单pyDNS查询 我下载的是源文件,然后安装,在命令行下,进入到存放pyDNS的目录,然后执行命令: |
chinaunix网友2011-03-05 18:06:05
很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com