0

我有 twython 流媒体的代码,它正在工作。

def read_cred(file): in_handle = open(file,'r')

cred = {}
for ln in in_handle:
    data = ln.strip('\r\n').split('=')
    if len(data) > 1:
        key = data[0].strip(' ').lower()
        value = data[1].strip(' ')
        cred[key] = value
    else:
        print "error in parsing credentials file"
return cred

cred = read_cred(sys.argv[1])

类 MyStreamer(TwythonStreamer): def on_success(self, data): act(data)

def on_error(self, status_code, data):
    print status_code, data

流 = MyStreamer(cred['consumer_key'], cred['consumer_secret'], cred['access_token_key'], cred['access_token_secret'])

关键字 = sys.argv[2]

stream.statuses.filter(track=keywords)

但是,我想在 django 框架中创建一个包含“开始”和“停止”按钮的 UI。当我单击“停止”按钮时,我应该怎么做才能停止 twython 流媒体?可以给我一些简单的例子吗?

4

2 回答 2

0

只要停止按钮绑定到应用程序的其余部分(我没有使用过 Django,所以我无法提供一个简单的示例),然后调用 sys.exit() 就可以完成这项工作。

Django 可能有一些其他方法来终止内置的进程,或者在其文档中提供一些特定示例。您应该检查以确认此答案。

于 2013-09-29T22:04:54.413 回答
0

您可以使用 Twython 文档中描述的 disconnect() 函数 - https://twython.readthedocs.org/en/latest/api.html#twython.TwythonStreamer.disconnect

    def on_stop(self, status_code, data):
            self.disconnect()
    def on_start(keywords):
            stream = MyStreamer(cred['consumer_key'], cred['consumer_secret'],
                     cred['access_token_key'], cred['access_token_secret'])
            stream.statuses.filter(track=keywords)
于 2013-10-02T01:48:50.687 回答