2

我需要运行一个 python 脚本(它正在监听 Twitter),当它获取与特定主题标签匹配的推文时,它将在我的 django 应用程序上调用各种方法。

目前,我只是在命令行上手动运行脚本,但如果可能的话,我希望它在 django 中运行,这样我就可以从那里控制它,所以它在新的时候不必执行 HTTP POST数据。

我(简要地)看过芹菜,但这似乎是为了定期执行某些小任务。

有没有办法使用芹菜(或其他任何东西)来控制我拥有的这个长期运行的“听推特”脚本?

4

1 回答 1

1

您应该使用Supervisord来运行您的 django 应用程序和脚本。使脚本成为 Django 项目的一部分,将允许您使用Django 信号,您可以使用这些信号来编写自定义信号,该信号将在每次您的twitter逻辑完成它应该做的事情时发出。Signals正在阻塞。如果您希望它们是异步的,请在 Django 中使用 Celery

另一种方法是通过运行您的 django 应用程序和 twitter 脚本supervisord,然后REST API向 Django 应用程序公开执行 HTTP POST 的 a。您可以为此使用TastyPie

于 2012-08-22T17:08:52.080 回答