-1

使用 R 获取 twitter 数据是否有任何限制。我正在尝试获取 2000 条推文,但 twitter API 仅返回 261

警告消息: 1: 在 if (nchar(searchString) > 1000) { : 条件长度 > 1 并且只使用第一个元素 2: 在 doRppAPICall("search/tweets", n, params = params, retryOnRateLimit = retryOnRateLimit, : 请求了 2000 条推文,但 API 只能返回 261

4

2 回答 2

1

为避免 Twitter 限制,请使用:

library(streamR)

filterStream 打开与 Twitter 的 Streaming API 的连接,该 API 将返回匹配一个或多个过滤器谓词的公共状态。推文可以按关键字、用户、语言和位置过滤。输出可以保存为内存中的对象或写入文本文件。

filterStream(file.name = NULL, track = NULL, follow = NULL, locations = NULL, language = NULL, timeout = 0, tweets = NULL, oauth = NULL, verbose = TRUE)

注意:此功能实时获取推文并避免限制。

于 2018-04-02T13:22:53.500 回答
0

你肯定不会收到现有的那么多推文。Twitter 限制您可以返回多远(以及因此有多少推文可用)的方式是使用传递给 Twitter API 的 GET 搜索/推文调用的最小 since_id 参数。在 Tweepy 中,API.search 函数与 Twitter API 接口。Twitter 的 GET 搜索/推文文档有很多很好的信息:

可以通过 API 访问的推文数量是有限制的。如果自 since_id 以来已发生 Tweets 限制,则 since_id 将被强制为可用的最旧 ID。

实际上,Tweepy 的 API.search 应该不会花费很长时间来获取所有可用的推文。请注意,并非所有推文都可以通过 Twitter API 获得,但我从来没有让搜索占用超过 10 分钟。

于 2018-04-02T07:50:08.313 回答