翠儿。让流永远运行

2024-06-01

我对 tweepy python 库比较陌生。 我想确保我的流 python 脚本始终在远程服务器上运行。因此,如果有人能够分享如何实现这一目标的最佳实践,那就太好了。

现在我正在这样做:

if __name__ == '__main__':

while True:

    try:

        # create instance of the tweepy tweet stream listener
        listener = TweetStreamListener()

        # set twitter keys/tokens
        auth = OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
        auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)

        # create instance of the tweepy stream
        stream = Stream(auth, listener)

        stream.userstream()
    except Exception as e:
        print "Error. Restarting Stream.... Error: "
        print e.__doc__
        print e.message
        time.sleep(5)

我回来了False对于每种方法:on_error(), on_disconnect(), on_timeout()。 所以,通过返回False流停止然后在无限循环中重新连接。


这是我的做法,它已经在两台计算机上运行了近一年,以处理使流停止的错误。

#They don't need to be in the loop.
auth = OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)

while True:
    listener = TweetStreamListener()
    stream = Stream(auth, listener, timeout=60)

    try:
        stream.userstream()

    except Exception, e:
        print "Error. Restarting Stream.... Error: "
        print e.__doc__
        print e.message

为了确保它永远运行,您应该重新定义on_error方法来处理重新连接尝试之间的时间。你的 5 秒睡眠会阻碍你成功重新连接的机会,因为 Twitter 会发现你尝试这样做的频率太高。但这是另一个问题了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

翠儿。让流永远运行 的相关文章

随机推荐

  • 如何改变android中menuItem的背景颜色?

    我正在以编程方式将菜单项添加到菜单中 我想在选择特定项目时添加背景颜色 如何为 menuItem 添加背景 您的回答将不胜感激 虽然其他答案提供了更改样式 这会影响all菜单项 据我了解 需要更改一个菜单项 我建议你使用android ac
  • Boost:如何从 Epoch 打印/转换 posix_time::ptime(以毫秒为单位)?

    我在转换时遇到问题posix time ptime到由 表示的时间戳time t or posix time milliseconds 或任何其他可以轻松打印的适当类型 来自 Epoch 我实际上只需要打印由posix time ptime
  • Web 服务调用后响应对象中的属性为 null

    我可以在 Fiddler 中看到该对象 但该对象在我这边没有反序列化 有没有人见过这个 响应为空 或 响应包含空值 或 请求为空 或 请求包含空值 几乎总是意味着命名空间不匹配 例如 响应可能包含
  • 构造奎因(自我复制功能)

    有没有人构建过 quine 生成自己源文本的副本作为其完整输出的程序 http www nyx net gthompso quine htm http www nyx net gthompso quine htm 在 R 中 quine 标
  • 使用biopython写入fasta文件时出错

    我使用以下代码将 fasta 序列写入文件 from Bio import SeqIO sequences KKPPLLRR add code here output handle open example fasta w SeqIO wr
  • 检查双精度值的等于和不等于条件

    我在比较两者时遇到困难double values using and 我创建了 6 个双变量并尝试进行比较If健康 状况 double a b c d e f if a b c d e f My code here in case of t
  • Quartz.NET 设置 MisfireInstruction

    我正在使用 Quartz NET 在 C 中工作 并且在 CronTrigger 上设置失火指令时遇到问题 我正在运行安装了 Quartz DB 的 SQL 后端 我有以下代码 可以很好地创建作业和运行调度程序 IScheduler sch
  • 如何将 DataTable 转换为动态对象?

    我怎样才能转换DataTable in IEnumerable
  • 输入数字或 Q 退出

    大家好 我在设定的任务中遇到了一些问题 任务的第一部分是输出具有以下规则的价格表 50 件以内的价格为每件 5 英镑 51 至 80 之间的价格为每张 4 英镑 而 81 至 100 之间的价格为每张 2 50 英镑 使用循环结构和选择语句
  • 查找回收器视图中的第一个可见项目是否是列表的第一项

    我有一个包含 13 个数据项的回收器视图 我想知道列表中的第一项是否可见 我知道像这样的方法findFirstVisibleItemPosition and findLastVisibleItemPosition但他们没有说明第一个可见项目
  • 切换到工作区并在 Xcode 中添加 CocoaPods 后提交 git 吗?

    我刚刚在 Xcode 5 中将 CocoaPods 添加到我当前的项目中 当然 CocoaPods 创建了一个工作区 并且我已在 Xcode 中启动了该工作区 我在工作区中看到了我的项目和 Pods 项目 我的项目从第一天起就处于源代码控制
  • C# .NET 4.0 测试框架?

    如果我没记错的话 NUnit 是单元测试事实上的标准 但我刚刚下载了它 编写了一个简单的测试 然后显然我必须启动 GUI 并加载我的 exe组装 根本就失败了 我尝试编辑 C Program Files x86 NUnit 2 5 7 bi
  • 如何检测不渲染 .png 透明的浏览器

    我有这段代码可以根据一周中的某一天渲染图像 但在 IE6 及更低版本以及可能其他一些浏览器中 它不会呈现 png 不透明度 所以我想稍微改变一下 这样它就会检测到不渲染 alpha 透明度的浏览器 并告诉他们加载这个图像 img horar
  • 从 xsd 生成 cXML 类会引发错误“元素‘uri:ds:Signature’丢失。”

    我正在尝试根据 cXML 1 2 034 版本生成 cXML 类http cxml org http cxml org XSD 由 Visual Studio 转换 我将 cXML dtd 转换为 xsd 然后尝试运行 xsd exe cX
  • 最有效地将编译时大小的数组的所有元素相加

    我正在尝试使用最少量的指令 有效地将所有内容添加到编译时大小的数组中 当然 我正在使用模板 我创造了这个 template
  • SQL Server 2008:如何使用 powershell 获取“消息”选项卡(在 Management Studio 中)输出

    我在用invoke sqlcmd管理我的数据库 它工作得很好 我将 Management Studio 中 结果 选项卡的输出保存到日志文件中 当我做一个BACKUP DATABASE 输出是在 消息 选项卡上完成的 我想将其保存在日志文件
  • Powershell:根据属性过滤属性

    我对 PowerShell 的自学经验有限 所以这可能是一些基本的东西 但我似乎无法正确理解 我在 Active Directory 中 需要提取电子邮件地址不以 SamAccountName 开头的用户列表 因此 如果您的登录名是 jdo
  • 如何使用 AngularJS、Devise 和 UI Router 全局实现身份验证?

    我对 Angular 很陌生 所以这可能是一个新手问题 我正在尝试实现一个简单的任务管理器 只是一个练习 以 Rails 作为后端 以 Angular 作为前端 到目前为止 我遵循了教程 一切正常 现在我想在全球范围内实施身份验证 这意味着
  • 检测CloudFoundry/Bluemix的版本

    我正在尝试检测 Bluemix Cloud Foundry 的版本 我可以使用一个命令来执行此操作吗 cf version 告诉您命令行界面的版本 但不告诉您要 推送 到的服务器的版本 thanks anthony 您可以通过 CloudF
  • 翠儿。让流永远运行

    我对 tweepy python 库比较陌生 我想确保我的流 python 脚本始终在远程服务器上运行 因此 如果有人能够分享如何实现这一目标的最佳实践 那就太好了 现在我正在这样做 if name main while True try