首页 > 解决方案 > Pyshark - 在 .sniff_continuously 循环中触发另一个脚本

问题描述

我有一个 pyshark 脚本嗅探本地网络上的数据包。目的是数据包嗅探一些进出 STB 的东西。如果我在运行时使用遥控器操作盒子以生成数据包,则脚本可以完美运行。

当我尝试将 STB blaster 脚本集成到包嗅探的 pyshark 外观中时,问题就出现了:

import pyshark
import sys

class wireshark_packets:
    
    def __init__(self, interface, ip_addr):
        self.interface = interface
        self.ip_addr = ip_addr
    
    def capture_live_packets(self):
        capture = pyshark.LiveCapture(interface=self.interface)
        # tried blaster script here
        for raw_packet in capture.sniff_continuously():
            # tried blaster script here too
            #do some stuff

在第一个位置,STB 活动发生在任何主动嗅探开始之前。在第二个中,STB blaster 命令正在为每个接收到的数据包执行,其中有很多,因为这个网络上有很多设备。

是否有一个简单的解决方案,不需要使用 asyncio 或我缺少的东西?

谢谢

标签: pythonpython-3.xpyshark

解决方案


推荐阅读