【问题标题】:Scapy failing to import 'IP' not definedScapy 无法导入未定义的“IP”
【发布时间】:2015-03-23 10:23:28
【问题描述】:

我在将 scapy 导入 python 脚本时遇到问题。我正在使用python 2.7。 Scapy 在交互式视图中运行良好,但尝试编写自定义脚本失败,名称“IP”未定义

import sys
from scapy.all import *

p=sr(IP(dst="10.1.99.2")/TCP(dport=80))

print 'success'

就我而言,使用安装了最新 scapy 的 ubuntu 14.04 和运行该脚本的 python 2.7 无法导入多个不同的层,并出现错误,例如“无法导入层 inet:名称 'IP' 未定义”

有什么想法吗?

编辑:已解决:不知道它是什么,但我桌面上的 py 文件阻止它正常运行。将其移至下载文件夹后,它就可以正常工作了

【问题讨论】:

  • 你是如何安装 scapy 的?点子?还是 apt-get?
  • sudo apt-get install scapy -- 在虚拟机上安装 ubuntu 14.04 后直接发生
  • 奇怪,尝试使用“apt-get remove scapy && pip install scapy”可能是apt-get版本坏了?我使用 pip 一个,因为它是较新的版本
  • 在输入上面的命令后,我被告知我没有安装 pip 并被指示安装 python-pip - 安装 python-pip 并重新运行上述脚本后,它指出“要求已经满足”尝试时运行我自己的 scapy 脚本,它仍然给出许多“无法导入层 XXX:名称'IP'未定义”,其中 XXX 是许多 scapy 模块?最后说 TypeError: 'str' object is not callable
  • 你是通过dpkg安装的吗?做dpkg -l | grep scapy 它会返回吗?如果是这样,尝试卸载它apt-get remove...然后通过pip安装它

标签: python import scapy


【解决方案1】:

从我目前的假设来看,我桌面上的文件是触发问题的原因 - 可能是 ubuntu 固有的用户限制 - 但是,在将 .py 文件从我的桌面文件夹之外移动到下载文件夹之后 -它不再出现错误

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-09
    • 2021-02-12
    • 1970-01-01
    • 1970-01-01
    • 2015-01-18
    • 2018-05-17
    相关资源
    最近更新 更多