2017-01-05 3 views
0

Ich versuche, Scapy für eines meiner Projekte zu verwenden. Aber es gibt den folgenden Fehler, wenn ich es teste.Sniff Fehler in Scapy

NameError: name 'sniff' is not defined

import sys 
from scapy import * 


devices = set() 

def PacketHandler(pkt): 

    if pkt.haslayer(Dot11) : 

     dot11_layer = pkt.getlayer(Dot11) 

     if dot11_layer.addr2 and (dot11_layer.addr2 not in devices): 
      devices.add(dot11_layer.addr2) 
      print dot11_layer.addr2 

sniff(iface = sys.argv[1], count = int(sys.argv[2]), prn = PacketHandler) 

wenn ich Modulnamen scapy.all ändern, heißt es dort kein Modul ist.

Python-Version: 2.7 scapy Version: 2.3.3

Ich habe gerade mit pip installiert installieren scapy.Any würde geschätzt hilft.

+0

Können Sie den Fehler anzeigen? – Noob123

+0

Hallo @ Noob123. Bitte beachten Sie den Ausgabefehler: Traceback (letzter Aufruf zuletzt): Datei "get_wifi.py", Zeile 18, in sniff (iface = sys.argv [1], count = int (sys.argv [2]) , prn = PacketHandler) NameError: Name 'Sniff' ist nicht definiert – pydev

Antwort

0

Sie müssen scapy als from scapy.all import * importieren und Sie nicht Ihren Skript scapy.py (oder jedes anderes Skript im aktuellen Verzeichnis oder Ihre PYTHONPATH) nennen müssen!

+0

Hi @Pierre. Bei Verwendung von scapy.all import *. Es besagt, dass es kein Modul namens scapy.all gibt. Wenn ich von scapy import * wechsel, gibt es den Sniff-Fehler. Danke – pydev

+0

Hast du den zweiten Teil meiner Antwort gelesen und das überprüft? – Pierre

+0

Hallo @Pierre. Nochmals vielen Dank für Ihre Hilfe. Ja, ich habe es bereits überprüft. Leider hat es nicht funktioniert. Traceback (jüngste Aufforderung zuletzt): File "mysaypay.py", Zeile 2, in von scapy.all import * Import: Kein Modul mit dem Namen scapy.all – pydev