首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyshark实时捕获

Pyshark实时捕获
EN

Stack Overflow用户
提问于 2017-07-07 19:59:32
回答 1查看 2.1K关注 0票数 1

我想捕获RTCP数据包并解析它。正如我在实时捕获的pyshark文档中看到的那样,我必须定义超时,即我们的packet_count。根据我的理解,在此选项之后,实时捕获将停止,并且我能够解析数据。我需要做一个计算,所以我总是需要来自数据包"n“和"n+1”的数据。如果pyshark在超时后或x包之后解析数据,我如何保证始终有"n“和"n+1”包。

下面是一个示例:

代码语言:javascript
复制
capture = pyshark.LiveCapture(interface='eth0')
for packet in capture.sniff_continuously(packet_count=5):
    print 'Just arrived:', packet

如果我捕获了5个包,如何计算第5个包?我无法捕获无限数量的数据包。

如果我只捕获1个数据包,将其分配给packet_0,然后使用while周期捕获另一个数据包,不断地将其分配给packet_1,进行计算,然后将packet_1拉到packet_0,然后返回到while周期的开始(捕获1个数据包到packet_1),这是可行的想法吗

EN

回答 1

Stack Overflow用户

发布于 2019-12-23 14:08:37

我在我的代码中写道:

代码语言:javascript
复制
pcap_reader = pyshark.LiveCapture('en0')
for packet in pcap_reader.sniff_continuously():
    print(packet)

参考:https://github.com/KimiNewt/pyshark/blob/6311e3e5598d42220ef02b896375544c1825113b/src/pyshark/capture/live_capture.py#L105

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44970243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档