【问题标题】:specify stream run-time (python)?指定流运行时(python)?
【发布时间】:2014-07-30 20:21:47
【问题描述】:

我有一个 twitter 流(通过 Twython)正在运行。我想在指定时间(以秒为单位)后断开连接(),而不是简单地依赖键盘中断。 作为编程新手,我不清楚在哪里找到有问题的语句:Running a python script for a user-specified amount of time? 应该放在哪里(鉴于我正在使用流媒体类)。 目前,我的代码如下:

class MyStreamer(TwythonStreamer):    #import from twython
    def on_success(self, data):
        json.dump(data,outfilePrep.outfile,sort_keys=False,indent=1)

    def on_error(self, status_code, data):
        print(status_code)
        outfilePrep.outfile.close()

stream = MyStreamer(<credentials>)
stream.statuses.filter(track=<stuff>,locations=<otherstuff>)

感谢您的帮助,感谢您对新手的轻松。

【问题讨论】:

    标签: python multithreading time stream control-flow


    【解决方案1】:

    当您的运行时间结束时,您必须调用 "disconnect" method on TwitterStreamer 来停止侦听。要检查运行时间,你可以在每个回调中检查它,你也可以注册 on_timeout 来检查它,以防没有推文来。

    【讨论】:

    • 我想我的问题更基本:无论有没有这种断开连接的方法,如何在函数或类中构建流对象的自动停止?
    猜你喜欢
    • 1970-01-01
    • 2020-12-21
    • 1970-01-01
    • 2018-05-06
    • 1970-01-01
    • 2021-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多