我正在尝试从 PCAP 文件中读取数据包并查看其中的数据包数量。后来,我会尝试对每个数据包执行更多操作。但是,数据包数量始终为零。我也尝试过使用其他 PCAP 文件。有人可以帮我找出问题所在吗?
import pyshark
cap = pyshark.FileCapture('./snort.log.1730480966')
print(cap)
print(len(cap)) # Length is always zero for some reason!
我使用 snort IDS 捕获了这个 PCAP 文件。我用来捕获该文件的命令是:
snort -q -b -l /var/log/snort -i eth1 -P 65535 -c /etc/snort/snort.conf &
您可以从这里下载文件。
我认为您的输入文件存在语法错误。您的文件名为
snort.log.1730480966.pcap
,但您在此声明中没有包含 pcap
pyshark.FileCapture('./snort.log.1730480966')
使用下面的代码,当我加载数据包并获取它们的长度时,我得到两个数据包
import pyshark
capture = pyshark.FileCapture(input_file='snort.log.1730480966.pcap')
capture.load_packets()
number_of_packets = len(capture)
print(number_of_packets)
附注这是我为 Pyshark
编写的一些
使用文档。该文档正在开发中,因为有很多方法可以使用该模块。