python使用scapy报错Traceback (most recent call last):ImportError: No module named all

北城以北 提交于 2019-11-27 10:41:45
 碰到这个问题很蹊跷,大家如遇到肯定像我一样认为是scapy安装的问题。

问题:在执行python脚本(import scapy)的目录下创建了一个scapy.py名字的脚本,然后python ipscapy就报错(脚本无问题)。
更正问题:修改mv scapy.py abc.py问题解决。
报错信息:
[root @localhost home]#python ipscan.py
Traceback (most recent call last):
File “ipscan.py”, line 5, in
from scapy.all import traceroute
File “/home/scapy.py”, line 5, in
from scapy.all import traceroute
ImportError: No module named all
问题原因
import scapy后执行脚本调用scapy模块中(默认自动加了.py后缀)优先找了当前目录的scap.py,因为两文件不一样(一个是我们引入别人写好的库文件,一个是我们自己创建的文件),所以就报错了。
图1
附:ipscan.py

# -*- coding: utf-8 -*-
import os,sys,time,subprocess
import warnings,logging

from scapy.all import traceroute
warnings.filterwarnings("ignore", category=DeprecationWarning)
logging.getLogger("scapy.runtime").setLevel(logging.ERROR)

domains = raw_input('Please input one or more IP/domain: ')
print domains
target = domains.split(' ')

dport = [80]

if len(target) >= 1 and target[0]!='':
    res,unans = traceroute(target,dport=dport,retry=-2)
    res.graph(target="> test.svg")
    time.sleep(1)
    subprocess.Popen("/usr/bin/convert test.svg test.png", shell=True)
else:
    print "IP/domain number of errors,exit"
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!