关于 Twitter API 速率限制的问题 - GET users/show

Posted

技术标签:

【中文标题】关于 Twitter API 速率限制的问题 - GET users/show【英文标题】:Twitter API rate limiting - GET users/show 【发布时间】:2021-10-26 20:19:48 【问题描述】:

我有兴趣在我的 android 应用程序中使用 twitter API 获取用户的关注者数量。

我怀着极大的兴趣阅读官方 twitter API 文档,但有些地方我不清楚。

据我了解,如果我只对关注者数量感兴趣,只是数量,我必须在 API 中使用 GET users/show。 对服务器的此调用速率为 900 个配置文件/15 分钟。

但是,我读到此限制适用于我拥有的每个用户 TOKEN。

我的问题是:

如果我的应用程序安装在例如 1,000 部手机上,我的应用程序将只能在 15 分钟内从 1,000 部手机向服务器发出 900 次查询?或者每个拥有不同用户的手机将能够在 15 分钟内进行 900 次查询。

希望我的解释正确。

谢谢和最好的问候。

【问题讨论】:

【参考方案1】:

在Twitter API v2 rate limits 部分:用户查找有限制300 per app900 per user。这些请求也是针对per 15-minute window 的,如该部分所述。您的意思是 1,000 部手机,我理解为 1,000 名 Twitter 用户通过 Twitter 登录登录到您的应用程序,如果不是将 900 更改为 300 用于休息。但是,当您在带有“请注意”标题的推特蓝色框中向下滚动时,会出现一条注释。这些注释说Users' rate limits are shared across all Apps that they have authorized.

除了开头说:

The maximum number of requests that are allowed is based on a time interval, some specified period or window of time. The most common request limit interval is fifteen minutes. If an endpoint has a rate limit of 900 requests/15-minutes, then up to 900 requests over any 15-minute interval is allowed.

总而言之,您每 15 分钟最多可以使用 900 个请求。这将取决于用户在其他 Twitter 应用中的活动。

我建议您检查该页面上称为 HTTP 标头和响应代码、从速率限制中恢复以及避免被速率限制的提示的部分。

【讨论】:

【参考方案2】:

首先,/1.1/users/show 已替换为 /2/users,因此以后使用后者。如果 300-bearer/900-user-contexts 速率限制过于繁琐,有以下三种可能:

    考虑升级到高级版或企业版, 考虑使用具有适当高速率限制的非User v2 端点并且公开expansions 参数,该参数可用于在响应中返回您正在寻找的这些数据, 如果允许,请考虑缓存这些数据。

v2 的 API 文档对于理解 expansions 参数的工作原理非常有帮助,但作为一个粗略的总结,它允许对 Tweet 对象的请求包含其他属性,例如相应的 @ 987654327@,比如粉丝数。

【讨论】:

以上是关于关于 Twitter API 速率限制的问题 - GET users/show的主要内容,如果未能解决你的问题,请参考以下文章

如何避免使用 tweepy Twitter API 的速率限制?

如何将 Twitter API 用于超过 REST 速率限制的大型 Web 应用程序

阅读没有 oauth 但对我的应用程序有速率限制的 twitter 用户时间线

关于 Spotify Api 上的速率限制请求/分钟的任何想法?

Twitter get_followers API 请求

Facebook图表API速率限制的详细要求是什么?