【问题标题】:Is it possible to stop twython streaming at certain point of time?是否可以在某个时间点停止 twython 流媒体?
【发布时间】:2013-09-22 15:22:11
【问题描述】:

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

def read_cred(文件): 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(自我,数据): 行为(数据)

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

stream = MyStreamer(cred['consumer_key'], cred['consumer_secret'], 信用['access_token_key'],信用['access_token_secret'])

关键字 = sys.argv[2]

stream.statuses.filter(track=keywords)

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

【问题讨论】:

    标签: python django twython


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      您可以使用 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)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-03-03
        • 2023-01-12
        • 2018-10-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-01
        相关资源
        最近更新 更多