背景 使用 gem 'twitter' 构建一个获取另一个用户的状态以存储到我的数据库中的 rails 应用程序
使用模块方法,我可以调用 Twitter.user_timeline("username", count: 3200) 但它最多会检索 200 个状态。
问题 是否存在使用 gem 的方法或代码可以超出此限制?或者我怎样才能翻阅我超过 200 的状态?
我研究过您最多可以达到 3200 个状态。我不希望超过它,但至少要达到极限。
背景 使用 gem 'twitter' 构建一个获取另一个用户的状态以存储到我的数据库中的 rails 应用程序
使用模块方法,我可以调用 Twitter.user_timeline("username", count: 3200) 但它最多会检索 200 个状态。
问题 是否存在使用 gem 的方法或代码可以超出此限制?或者我怎样才能翻阅我超过 200 的状态?
我研究过您最多可以达到 3200 个状态。我不希望超过它,但至少要达到极限。
您一次只能检索 200 个,文档似乎建议您可以使用参数 :max_id 来获取较旧的状态。3200个状态是你可以去的最远的地方
以下是我与注释一起使用的代码,使用 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