关于python:import error:没有名为dns.query的模块

import error: no module named dns.query

我正在尝试在Windows中执行python代码…代码包含以下行:

1
2
3
4
from scapy import *
import random
import socket
import dns.query

但我从命令行编译它时,它给出了以下错误:

1
2
3
4
5
C:\Python25 > attack.py
Traceback <most recent call last>:
File"C:\Python25\attack.py", line 4 , in <module>
import dns.query
ImportError: No module named dns.query

错误可能是什么?我怎么解决这个问题??是由于路径原因还是因为dns.query模块没有编译


这意味着您没有安装dnspython。

安装dnspython有两种方法:

1、好方法:

要安装任何模块,最简单的方法是首先安装安装工具。安装工具类似于Ubuntu的"apt-get"。如果你说"易于安装",它会得到并安装它。要安装安装工具,请从https://pypi.python.org/pypi/setuptools下载源文件现在排除它们。在提取的目录中有一个文件setup.py。运行python setup.py安装

这将在您的系统中安装安装工具。

您将能够看到一个可执行文件C:python2xscriptseasyinstall.exe(2x是python的版本,例如26、27等)

现在安装dnspython run

C:python2xscriptseasyu install.exe dnspython

这将解决您的问题,现在您的脚本应该正常运行。

您还可以将c:python2xscripts放在Windows路径中,这样您就不必每次安装模块时都放置整个路径。

2、坏方法:

但是,如果某些模块dnspython所依赖的模块不可用,则此方法可能无法工作。

从http://www.dnspython.org/kits/1.10.0/下载dnspython的来源并将其提取。现在转到提取的文件夹并运行python setup.py安装