【问题标题】:API to fetch twiiter feeds via cron通过 cron 获取 twiiter 提要的 API
【发布时间】:2012-07-04 22:28:10
【问题描述】:

我们开发了一种用于员工敬业度的产品。它提供了一项功能,如果您的办公室成员已授权该站点,则可以显示他们发布的推文。 推文的获取是由定期运行的 cron 完成的,该 cron 以大约 15 分钟的定期间隔运行。此 cron 搜索所有已授权该站点应用的用户 并在 Twitter 上请求他们的推文。对于每个用户,都会向 twitter 发送一个请求

目前系统正在使用 REST API (http://api.twitter.com/1/statuses/user_timeline.xml?user_id='xxxxxx') 将请求数限制为每小时 150 个。 我们无法发出经过身份验证的请求,因为它要求用户每次都授权调用,而这在通过 cron 发出请求时是不可能的。所以,只有 150 个请求 并且 cron 每小时运行四次,可能只能获取 35-40 个用户数据,这无法满足我们的要求。

我们还探索了 Site Streaming API 的选项。但它需要与 twitter 建立持久连接,这在使用 cron 时会很困难。 Site Streaming API 的另一个问题是它处于测试版并且该网站应该被列入白名单。

请协助我们选择可能有助于我们实现上述目标的最佳替代方案

【问题讨论】:

  • 当你说“它要求用户每次都授权调用”时,我不明白。您应该能够授权用户一次,然后将他们的 Oauth 令牌和令牌秘密存储在您的数据库中,以便您可以将其用于未来的请求,而无需重新授权。
  • 流媒体 API 不需要白名单。更好的是,查看140 dev 服务器。

标签: php api twitter cron


【解决方案1】:

有两种解决方案。

  • 创建一个帐户以关注已授权您的应用的用户。然后,只需检索该时间线。

【讨论】:

    【解决方案2】:

    我不能 100% 确定为什么您无法通过 Cron hwoever 保持登录状态,因为您使用的是 PHP,我是否可以建议您查看 https://github.com/jmathai/twitter-async/blob/master/EpiTwitter.php 来验证您的 oAuth,然后执行您想要的操作并关闭请求。

    如果您无法使用 Cron 执行此操作,请使用 serviceUptime.com 调用 php 脚本,尽管该脚本可以运行的最长时间为 35 秒,因此不要尝试一次将所有 lance Armstrong 推文全部拉回。 HTH。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多