dpkt在有效的pcap上抛出NeedData

时间:2012-01-26 17:19:29

标签: 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"

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

是什么导致这种情况?

1 个答案:

答案 0 :(得分:5)

此处提供了解决方案:Python stops reading file using read 当dpkt.pcap在Linux下正常工作但在Windows中运行时立即失败时,我遇到了同样的问题。 问题是,当以文本模式open("filename", "r")打开文件时,将读取文件,直到遇到EOF。因此,open("filename", "rb")