bugfix> python > 投稿
   #!/bin/bash/python3
from scapy3k.all import *``
import subprocess
import os
def ifac111():
    pkts = sniff(filter="tcp", iface="tun0", count=100)
    inp = input('want to see a \'pdfdump?\' \n Y/N--> ')
    fag = pkts.summary()
    print('-' * 60)
    what_df = pkts.show()
    print("^^^ Here you got {} packets {}.".format("100", "scanned"))
    print("The {} ones are {} and second ones are just {} command".format("first", "summary", "show" ))
    print(inp)
    if inp == 'Y':
        pkts[0].pdfdump()
    else:
        print("got ya \f hex0")
while 1 > 0:
    SSS = input('enter your command\'s here:-> \t ') #\t moves 4 spaces
    if SSS == 'packets':
        ifac111()
         elif SSS == 'nworkscan':
         os.system('sudo nmap localhost/24')
    elif SSS == 'Virusscan':
        os.system('sudo chkrootkit')
     elif SSS == 'clear':
        subprocess.call('clear')


私がpdfdumpを実行すると、このエラーが発生します
Traceback (most recent call last):
  File "scapy2.py", line 27, in <module>
    ifac111()
  File "scapy2.py", line 16, in ifac111
    pkts[0].pdfdump()
  File "/usr/local/lib/python3.6/dist-packages/scapy3k/packet.py", line 418, in pdfdump
    canvas = self.canvas_dump(**kargs)
  File "/usr/local/lib/python3.6/dist-packages/scapy3k/packet.py", line 428, in canvas_dump
    canvas = pyx.canvas.canvas()
NameError: name 'pyx' is not defined


質問が愚かである場合、私はコーディングが初めてであり、いくつかの研究を試みていますが、結果はありませんでした。以前のOSでもTCPの代わりにICMPを使用していましたが、オウムOSに変更した後、pdfdumpを実行すると動作しません上記のエラー

回答 2 件
  • これは確かにscapy3k.packetのバグです- pyx をインポートしようとします  インポートエラーがあった場合は静かに続行します。これにより問題が発生します。

    try:
        import pyx
    except ImportError:
        pass
    
    

    プロジェクトのgithubにバグレポートを記入する必要があります。パッケージは、サードパートパッケージとの依存関係を適切に宣言し、同時にインストールされるようにします。また、必要なインポートが失敗したという事実を黙らせないでください。

    それまでの間、自分でpyxをインストールしてみてください-動作するかもしれませんし、互換性のあるバージョンによってはどこかで壊れてしまうかもしれません。

  • scapy3kの代わりにscapyを使用する必要があります。これには、これらの修正とPyXのより良い傍受が含まれています

    FTR:

    scapy3k = python 3をサポートする唯一のものであったscapy 2.2.0に基づくフォーク

    scapy(secdevから)=元のscapy 2.4.0以降のpython 3でも動作する最新のもの

あなたの答え