将数据流式传输到客户端

时间:2013-11-05 11:20:01

标签: python python-2.7 twisted

我有一个程序可以使用pcapy(基于this)嗅探网络数据并将其存储在数据库中。我需要通过网络连接实时提供数据。

现在,当我运行程序时,它将启动第二个线程用于嗅探器和主线程上的Twisted服务器,但是我不知道如何让客户端“挖掘”在后台运行的嗅探器。

最终结果应该是客户端输入URL并且连接将保持打开,直到客户端断开连接(即使没有任何内容发送),每当服务器具有网络活动时,嗅探器将嗅探它并将其发送到客户端。

我是Python的初学者所以我非常不知所措,所以如果有人能指出我正确的方向,我将非常感激。

1 个答案:

答案 0 :(得分:1)

如果没有更多信息(一个简单的代码示例可能无法按预期工作),很难给出彻底的答案。

但是,这里有两个指针可以帮助你:

  • Twisted Pair,Twisted内部的一个(不幸的是非常简陋且记录不完整的)低级/原始套接字网络库,它可以直接以Twisted友好的方式实现数据包捕获,或者
  • 最近发布的Crochet,它允许您管理后台Twisted线程及其与基于pcapy的捕获代码的交互。