有人可以解释我的速率限制使用情况

时间:2016-08-13 18:33:10

标签: r loops twitter

我一直在使用r的twitteR软件包来下载推文并从中创建数据框。但是我已经很快地进入了速率限制,比我预期的要快得多,基于这里发布的速率限制:https://dev.twitter.com/rest/reference/get/statuses/user_timeline

以下是我一直在使用的代码:

library(RColorBrewer)
library(NLP)
library(twitteR)
library(foreign)
library(wordcloud)
library(tm)
library(base64enc)
library(httr)
library(caTools)
library(rpart)
library(rpart.plot)
library(plyr)

access_token<-"[omitted]"
access_secret<-"[omitted]"
consumer_key<-"[omitted]"
consumer_secret<-"[omitted]"

setup_twitter_oauth(consumer_key, consumer_secret, access_token, access_secret)

user.tweets<-userTimeline("@RealDonaldTrump", n=3200, includeRts=T)
master<-twListToDF(user.tweets)

在达到15分钟窗口的速率限制之前,我只能在五个不同的用户上运行此代码。当我使用

getCurRateLimitInfo()

我可以看到每次抓取用户的推文时,我都会使用32个单位来达到我的速率限制。任何人都可以解释为什么会这样吗?我现在最好的猜测是,我抓住的每组100条推文都计入一个单位,但是如果是这样的话,为什么不在速率限制文件中指定?

我正在尝试从数百个用户那里获取推文,因此每次达到速率限制时,此代码运行所需的时间都会增加吨。我开发了一个使用Sys.sleep()来避免超过速率限制的循环,但是仍然需要花费大量时间来完成我正在抓取的每个用户。

0 个答案:

没有答案