tweepy Streaming API与Django的集成

1 django twitter ajax streaming tweepy

我正在尝试通过tweepy.Stream()函数创建一个利用Twitter Streaming API的Django webapp.我很难概念化正确的实施.

我想要的最简单的功能是实时计算包含主题标签的推文数量.因此,我会打开一个流,按关键字过滤,每当新的推文通过连接时,我会增加一个计数器.然后该计数器显示在网页上并用AJAX或其他方式更新.

问题是tweepy.Stream()函数必须连续运行并连接到twitter(这就是要点).如何在Django应用程序的后台运行此流,同时递增可以(近乎)实时显示的计数器?

提前致谢!

Art*_*ert 6

有多种方法可以做到这一点,但使用消息库(芹菜)可能是最简单的方法.

1)保持python进程运行tweepy.找到有趣的消息后,创建一个新的芹菜任务

2)在这个胡萝卜任务中,将数据保存到数据库(计数器,推文等等).这个任务可以很好地运行django代码(例如ORM).

3)有一个常规的django应用程序显示你的任务持久的结果.

作为预防措施,在监督下运行tweepy过程可能是一个很好的理想(supervisord可能适合您的需求).如果出现任何问题,可以自动重启.