0

我使用 scapy 嗅探数据包,但 Scapy 无法像 PyShark(Wireshark) 那样返回数据包信息。例如:

>>> cap = pyshark.FileCapture('test.pcap', only_summaries=True)
>>> cap[1].info
'FTP Data: 1460 bytes'

>>> cap[2].info
'Response: 150 Opening BINARY mode data connection for Notes chapter2.pdf(14868284 bytes)'

>>> type(cap[2])
<class 'pyshark.packet.packet_summary.PacketSummary'>

这个功能是我真正想要的,但我只有数据包原始字节数组或 Scapy 数据帧。将字节数组转换为 PyShark 数据帧是一种解决方案吗?因为我的电脑在使用 PyShark 进行嗅探时出现了奇怪的问题。

4

1 回答 1

1

如果您将数据包作为字节变量,您可以在 Pyshark 中读取它:

c = pyshark.InMemCapture()
c.parse_packet(binary_packet)
c.parse_packets(list_of_binary_packets) # More efficient
于 2017-12-14T10:31:39.940 回答