首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用dnspython查询反向dns查找

使用dnspython查询反向dns查找
EN

Stack Overflow用户
提问于 2015-05-25 04:22:46
回答 1查看 6.3K关注 0票数 1

我正在尝试在dnspython中查询反向查找。不幸的是,from_address()函数不允许我通过变量传递IP。你知道为什么吗?

代码语言:javascript
复制
#!/usr/bin/env python

import dns.resolver,dns.reversename

with open("test", "r") as ips:
    for ip in ips:
        ip = str(ip)
        n = dns.reversename.from_address(ip)
        print str(dns.resolver.query(n,"PTR")[0])

我是python的新手,如果有人能帮上忙,那就太好了!

EN

回答 1

Stack Overflow用户

发布于 2017-08-17 01:14:30

我真的怀疑你还在做这个工作,但是如果你打印出每个IP,你会意识到在每个ip中\n都有一个dns.reversename.from_address()不喜欢的换行符:

代码语言:javascript
复制
192.168.1.1

192.168.1.2

192.168.1.3

这会导致异常:

代码语言:javascript
复制
dns.exception.SyntaxError: Text input is malformed.

您可以轻松地更改行:

代码语言:javascript
复制
ip = str(ip)

至:

代码语言:javascript
复制
ip = str(ip).strip()

它将去掉所有的空格(在格式良好的IP地址列表中应该没有空格),只留下以下内容:

代码语言:javascript
复制
192.168.1.1
192.168.1.2
192.168.1.3

如果您遇到相同的文本格式化异常,并且您的IP地址格式正确,这应该可以解决您的问题。抱歉,我来晚了两年,我偶然发现了这个谷歌dns.reversename.from_address()。如果你的is列表格式不好,你可以使用像ippy这样的东西来过滤掉你的坏is。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30427952

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档