0

背景 使用 gem 'twitter' 构建一个获取另一个用户的状态以存储到我的数据库中的 rails 应用程序

使用模块方法,我可以调用 Twitter.user_timeline("username", count: 3200) 但它最多会检索 200 个状态。

问题 是否存在使用 gem 的方法或代码可以超出此限制?或者我怎样才能翻阅我超过 200 的状态?

我研究过您最多可以达到 3200 个状态。我不希望超过它,但至少要达到极限。

4

2 回答 2

1

您一次只能检索 200 个,文档似乎建议您可以使用参数 :max_id 来获取较旧的状态。3200个状态是你可以去的最远的地方

于 2013-07-25T22:06:30.840 回答
0

以下是我与注释一起使用的代码,使用 max_id 作为参数,通过循环运行它,然后将其保存到数据库中。希望这对某人有帮助

// 获取初始响应

//这将返回20个结果

x = Twitter.user_timeline("username")

//将每个结果保存到数据库

for i in(0..x.length-1)
    tweet = Tweet.create
    tweet.info = x[i].whatever_info
    tweet.save
end

//现在获取最后一个 tweet_id 并将其作为请求的一部分传递给 max_id

last_id = x.last.id  
prev_id = 0

//现在你想将last_id传递给一个新请求并循环它直到last_id等于previous_id

while prev_id != last_id do
a = Twitter.user_timeline("username", max_count: 200, max_id: last_id)
    for i in(0..x.length-1)
        tweet = Favoritetweet.create
        tweet.info = a[i].whatever_info
        tweet.save
    end

    prev_id = last_id
    last_id = x.last.id
end
于 2013-07-30T13:25:47.060 回答