dpkt在有效的pcap上抛出NeedData

Nit*_*tay 2 python pcap

我有这个python代码:

import sys
import dpkt

f = file("pcaop.Pcap")
pcap = dpkt.pcap.Reader(f)

i = 0
for ts, buf in pcap:
    print "Ya"
Run Code Online (Sandbox Code Playgroud)

dpkt在第52个数据包上抛出NeedData.每次都是同一个 - 我检查了数据包52,它与wireshark上的其他人一样.

是什么导致这个?

kuz*_*vas 5

这里提供了解决方案:Python使用read停止读取文件 当dpkt.pcap在Linux下正常工作但在Windows中运行时立即失败时我遇到了同样的问题.问题是当在文本模式下open("filename", "r")打开文件时,将读取文件,直到遇到EOF.从而,open("filename", "rb")