1

所以我今天遇到了一个问题,scapy 无法识别我的导入。这不是版本问题,因为我尝试了所有可能的 python 版本,并且都尝试了:

从 scapy 导入 *

从 scapy.all 导入 *

这个问题真的很烦人,所以任何帮助都将不胜感激。目前我使用 python 2.5 和版本 2.2 scapy。

这是代码:

import logging
from scapy.layers.inet6 import IP
logging.getLogger("scapy.runtime").setLevel(logging.ERROR)
from scapy.all import  *

i = IP()

以下是错误消息:

Traceback (most recent call last):
  File "C:\Users\Martinooos\Desktop\eclipse\plugins\org.python.pydev_2.7.5.2013052819\pysrc\pydev_runfiles.py", line 432, in __get_module_from_str
    mod = __import__(modname)
  File "C:\Users\Martinooos\workspace\testing\test.py", line 7, in <module>
    from scapy.layers.inet6 import IP
  File "C:\Users\Martinooos\Desktop\scapy-2.2.0\scapy\layers\inet6.py", line 35, in <module>
    from scapy.layers.l2 import *
  File "C:\Users\Martinooos\Desktop\scapy-2.2.0\scapy\layers\l2.py", line 14, in <module>
    from scapy.ansmachine import *
  File "C:\Users\Martinooos\Desktop\scapy-2.2.0\scapy\ansmachine.py", line 14, in <module>
    from sendrecv import send,sendp,sniff
  File "C:\Users\Martinooos\Desktop\scapy-2.2.0\scapy\sendrecv.py", line 13, in <module>
    import arch
  File "C:\Users\Martinooos\Desktop\scapy-2.2.0\scapy\arch\__init__.py", line 79, in <module>
    from windows import *
  File "C:\Users\Martinooos\Desktop\scapy-2.2.0\scapy\arch\windows\__init__.py", line 17, in <module>
    from scapy.sendrecv import srp1
ImportError: cannot import name srp1

注意:例如,如果我从文件中删除 srp1,则会弹出另一个导入错误,因此每次导入都会出现这种情况。由于 pydev 识别 scapy 文件夹,我不知道发生了什么。

谁能帮我?谢谢

4

1 回答 1

1

确保订单正确。下面的代码工作正常。

import logging
from scapy.all import *
from scapy.layers.inet6 import IP
logging.getLogger("scapy.runtime").setLevel(logging.ERROR)

i = IP()
于 2014-10-17T16:34:16.537 回答