【问题标题】:R and twitteR - userTimeline() function not returning the number of tweets requestedR 和 twitteR - userTimeline() 函数不返回请求的推文数量
【发布时间】:2015-06-02 16:41:39
【问题描述】:

为什么我在使用 twitteR 包中的 userTimeline() 函数时无法获得我请求的推文数量?我现在对用户时间线的限制请求是 3200 条推文,但我只得到了其中的 10%...

这里有两个例子:

在此示例中,“googledevs”帐户只有 2,000 条推文,所以我确实请求了 1000 条推文,但我仍然只有 106 条...

> library(twitteR)
> load('OAuth.RData')
> test <- userTimeline(user = 'googledevs', n=1000)
> length(test)
[1] 106

在本例中,“FiveThirtyEight”有 5622 条推文。所以我要了 3200 只得到了 317...

> library(twitteR)
> load('OAuth.RData')
> test2 <- userTimeline(user = 'FiveThirtyEight', n=3200)
> length(test2)
[1] 317

有人可以帮我解决这个问题吗? 谢谢

【问题讨论】:

  • 这里有人有同样的问题还是只是我的 api 请求和限制有问题?

标签: r twitter twitter-r


【解决方案1】:

您需要在 userTimeline 调用中包含 includeRts=TRUE 参数。这应该为您提供用户时间线上的最大推文数量和 3200。

【讨论】:

    【解决方案2】:

    Twitter API 只会返回过去一周左右的推文。见the documentation

    “搜索 API 不是所有推文的完整索引,而是最近推文的索引。目前该索引包括 6-9 天的推文。”

    【讨论】:

    • 有没有办法获取某一天的所有推文?
    【解决方案3】:

    您需要在 userTimeline 调用中包含 includeRts=TRUE 参数。这将返回最少 3200 个帖子以及用户时间轴上的帖子总数。

    【讨论】:

      【解决方案4】:

      我认为问题在于,虽然它只检索一定数量的推文,但它正在通过您设置的最大数量。它包括转发和回复。如果您设置为 true 包括回复和转发选项,您应该检索您设置的推文总数。一个很好的解决方法是使用推文 ID 以及 sinceID 和 maxID 选项“制作”时间窗口。

      【讨论】:

        猜你喜欢
        • 2017-05-24
        • 2016-08-16
        • 2019-08-03
        • 1970-01-01
        • 2021-11-01
        • 1970-01-01
        • 2021-06-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多