我想创建一个循环来获取来自2个Twitter用户(@Better_Together和@YesScotland)的所有推文。即使我选择了3200条推文,这是根据此错误消息的限制:
In statusBase(cmd, params, n, 3200, ...) : statuses/user_timeline has a cap of 3200 statuses, clipping )
我似乎无法获得超过40条推文。
我想获得这两个帐户的所有+ - 5000条推文。我认为创建循环将是解决方案。有人可以帮忙吗?
UK_Together.list <- userTimeline('UK_Together', n=3200)
UK_Together.df = twListToDF(UK_Together.list)
UK_Together.df$text <- sapply(UK_Together.df$text,function(row) iconv(row, "latin1", "ASCII", sub=""))
write.csv(UK_Together.df, file='UK_TogetherTweets.csv', row.names=F)
YesScotland.list <- userTimeline('YesScotland', n=3200)
YesScotland.df = twListToDF(YesScotland.list)
YesScotland.df$text <- sapply(YesScotland.df$text,function(row) iconv(row, "latin1", "ASCII", sub=""))
write.csv(YesScotland.df, file='YesScotlandTweets.csv', row.names=F)
答案 0 :(得分:1)
我可能会写一个for循环并添加一条Sys.sleep行,它会暂停你的循环足够长的时间以防止速率限制
答案 1 :(得分:0)
我要编写一个循环,该循环使用用户时间轴中的 maxID 参数:
代码
userTimeline("user", n=3200, maxID = min(as.numeric(user_timeline_df$id)))
然后将其放入某种循环中并进行迭代,直到不返回任何内容。 仅下载几千条推文时,速率限制就不会成为问题。