【问题标题】:Why i can't get all retweeters?为什么我无法获得所有转发者?
【发布时间】:2018-05-28 18:42:14
【问题描述】:

在推特上,我看到 102 条转发,但我只收到 94 条转发。 为什么?我怎样才能获得 100 个转发者?

我使用twitter-api-php 和下一个参数:

$url = 'https://api.twitter.com/1.1/statuses/retweets/tweet_id.json';
$getfield = '?count=100' ;
$requestMethod = 'GET';
$twitter = new TwitterAPIExchange($settings);
$json = $twitter->setGetfield($getfield)
                ->buildOauth($url, $requestMethod)
                ->performRequest();

【问题讨论】:

  • 你应该澄清你想要retweetretweetERS的数量
  • 推文 ID 是什么?一些可能性:8 个用户要么删除了他们的账户,要么将他们的推文设为私有。
  • 我需要转发者@PatrickQ
  • @PatrickQ 我认为这些数字应该始终相同。
  • @PatrickQ:你能想出一个推文的转发数量与转发数量不同的情况吗?我不明白这怎么可能,因为用户只能 RT 0 或 1 次。

标签: php api twitter


【解决方案1】:

没有推文 ID,我们无法判断,但有据可查的是 GET statuses/retweeters/ids endpoint only returns up to 100 retweeers,而 Twitter 拒绝修复该问题。

【讨论】:

    【解决方案2】:

    受保护的转推显示为您看到的计数的一部分,但您无法通过 API 获得它们或其转推者(除非受保护的帐户跟随您)。

    为了概述这一点,我创建了一个 test Tweet 并从同一个帐户以及受保护的帐户转发了它。如果您点击查看转发了谁,它会显示转发它的同一个帐户,并在底部显示“1 个用户已要求不在此视图中显示。Learn More”:

    API 也将相应地仅返回单个 Retweet(er)。

    【讨论】:

      【解决方案3】:

      Twitter 1.1 API 上的文档说:

      获取状态/转发者/ID

      返回最多 100 个用户 ID 的集合,这些用户 ID 属于以下用户 已转发 id 参数指定的推文。

      Link to developer.twitter.com

      我认为这意味着在这种情况下您只有 94 位转发者。如果存在,它最多可以返回 100 个。此外,它可能不算您转发自己的帖子,但这没有多大意义。

      【讨论】:

      • 即用户转发然后被删除?转发者数量保持不变?
      • 听起来有道理,个人对 Twitter API 的了解还不够,无法确定。不过,这一定是一些小的差异。
      猜你喜欢
      • 1970-01-01
      • 2017-02-11
      • 1970-01-01
      • 2019-12-23
      • 2019-11-27
      • 1970-01-01
      • 2013-02-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多