Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
dnsPython-不工作_Python_Dnspython - Fatal编程技术网

dnsPython-不工作

dnsPython-不工作,python,dnspython,Python,Dnspython,我正在进行一个项目,我需要测试域是否在MX、AAAA记录中有IPv6地址。 我想使用Python进行脚本编码。我找到了dnsPython并安装了它,但它似乎根本不起作用 当我执行此简单代码时: import dns.resolver answers = dns.resolver.query('dnspython.org', 'MX') for rdata in answers: print 'Host', rdata.exchange, 'has preference', rdata.

我正在进行一个项目,我需要测试域是否在MX、AAAA记录中有IPv6地址。 我想使用Python进行脚本编码。我找到了dnsPython并安装了它,但它似乎根本不起作用

当我执行此简单代码时:

import dns.resolver

answers = dns.resolver.query('dnspython.org', 'MX')
for rdata in answers:
    print 'Host', rdata.exchange, 'has preference', rdata.preference
我得到这个错误:

Traceback (most recent call last):
  File "H:\Python_workspace\Test\Zdroj\bbb.py", line 9, in <module>
    answers = dns.resolver.query('dnspython.org', 'MX')
  File "build\bdist.win32\egg\dns\resolver.py", line 920, in query
  File "build\bdist.win32\egg\dns\resolver.py", line 847, in query
  File "build\bdist.win32\egg\dns\resolver.py", line 692, in _compute_timeout
dns.exception.Timeout
回溯(最近一次呼叫最后一次):
文件“H:\Python\u workspace\Test\Zdroj\bbb.py”,第9行,在
answers=dns.resolver.query('dnspython.org','MX')
查询中第920行的文件“build\bdist.win32\egg\dns\resolver.py”
查询中第847行的文件“build\bdist.win32\egg\dns\resolver.py”
文件“build\bdist.win32\egg\dns\resolver.py”,第692行,在计算超时
dns.exception.Timeout
我曾经用Java编写代码,但是如果在编译过程中出现了一些错误,由于错误描述,我能够找出错误所在,但是在这里我迷路了,我无法从错误中找到任何有用的东西来查找错误。
看起来有东西丢失或库安装不正确。

您遇到的异常是:
dns.exception.Timeout
。这不是编译错误,而是运行时异常。这可能是因为您的防火墙或路由器设置不允许dnspython进行需要的DNS查询

有什么建议吗?我已经尝试关闭防火墙,但没有结果。有一些关于在路由器上设置什么的提示吗?或者如何测试防火墙/路由器是否确实存在问题…?我很难说。在您的设置中,DNS查询(或响应)数据包可能会被阻止的原因有很多,我无法从这里进行诊断。第一件事可能是尝试一个完全不同的互联网连接(例如咖啡店或其他有免费wifi的地点)。这可能会告诉您问题是您的代码还是防火墙。已解决。。。我在另一台连接到不同ISP的电脑上试用了它,效果很好。所以我试着解决我的网络连接问题。。。在我的路由器出厂复位后,一切正常。