分页如何在twitter宝石中起作用?

时间:2016-06-09 16:57:03

标签: ruby-on-rails twitter rubygems

我已使用此gem将推文集成到我的Rails 4应用程序中。

能够使用以下twitter gem方法获取twitter家庭时间线供稿

方式:

twitter.home_timeline

这将返回home_timeline的最后20条推文

要获取首页推文,我已在该方法中添加了以下选项,这些选项将在第1页中返回前200条推文。

方式:

twitter.home_timeline(:page => 1, :count => 200)

在这里,每次我必须手动提供页码,如:page => 2,:page => 3,...等等,以获取下一页的推文。

那么,他们使用twitter gem获取Twitter家庭时间推文总页数的方法或方法是什么?

2 个答案:

答案 0 :(得分:0)

official documentation中所述:

  

注意:此方法最多只能返回800条推文,包括   转推。

意味着您永远无法获得超过第4页的推文(使用count作为200)

答案 1 :(得分:0)

要回答标题中的问题,gem只需拨打电话并将所有提供的参数(包括页面和计数)传递给twitter API - 请参阅source

  def home_timeline(options = {})
    perform_get_with_objects('/1.1/statuses/home_timeline.json', options, Twitter::Tweet)
  end

所以你得到的逻辑就是来自twitter API的逻辑。对于API,您可以阅读官方文档here。另外解释了分页here。如其他答案所示,状态/ home_timeline调用有一个限制:

  

在家庭时间线上最多可获得800条推文。它更多   对于跟随许多用户或关注推文的用户的易用性   频繁。

与此同时,您可以测试API https://dev.twitter.com/rest/tools/console - 对我来说是有用的链接