python pycharm(使用pyshark库)

2024-09-30 22:11:39 发布

您现在位置:Python中文网/ 问答频道 /正文

如何将pcap文件添加到pycharm上的项目文件中?在

这是我的代码:

import pyshark

cap = pyshark.FileCapture('dnpdataset')


def print_conversation_header(pkt):
    try:
        protocol = pkt.transport_layer
        src_addr = pkt.ip.src
        src_port = pkt[pkt.transport_layer].srcport
        dst_addr = pkt.ip.dst
        dst_port = pkt[pkt.transport_layer].dstport
        print
        '%s  %s:%s --> %s:%s' % (protocol, src_addr, src_port, dst_addr, dst_port)
    except AttributeError as e:
        # ignore packets that aren't TCP/UDP or IPv4
        pass

cap.apply_on_packets(print_conversation_header, timeout=100)

给我这个错误:

Traceback (most recent call last): File "C:/Users/mtare/PycharmProjects/moe1/first.py", line 3, in cap = pyshark.FileCapture('dnpdataset') File "C:\Users\mtare\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pyshark\capture\file_capture.py", line 47, in init raise FileNotFoundError(str(self.input_filename)) FileNotFoundError: dnpdataset


Tags: 文件srclayerportdstheadertransportcap
1条回答
网友
1楼 · 发布于 2024-09-30 22:11:39

您必须为FileCapture提供捕获文件的绝对路径

import pyshark

cap = pyshark.FileCapture(r'C:\Temp\dnpdataset.pcap')


def print_conversation_header(pkt):
    try:
        protocol = pkt.transport_layer
        src_addr = pkt.ip.src
        src_port = pkt[pkt.transport_layer].srcport
        dst_addr = pkt.ip.dst
        dst_port = pkt[pkt.transport_layer].dstport
        print('%s  %s:%s  > %s:%s' % (protocol, src_addr, src_port, dst_addr, dst_port))
    except AttributeError as e:
        # ignore packets that aren't TCP/UDP or IPv4
        pass


cap.apply_on_packets(print_conversation_header, timeout=100)

相关问题 更多 >