Twitter请求频率超限。客户端每小时最多可发350个请求

4 投票
3 回答
4557 浏览
提问于 2025-04-16 08:15

我在我的应用中使用Tweepy,发送不超过10条推文和更新时间线大约20到30次后,常常会遇到这个异常。

Rate limit exceeded. Clients may not make more than 350 requests per hour.

为了更新时间线,我使用了时间线函数,并限制最多显示40条推文。

所以我不知道到底发生了什么,也许每发送一条推文就会有不同的API调用,或者类似的情况。

你知道哪种请求会消耗更多的API调用吗?或者什么时候会使用多个请求?

有没有关于如何更好地使用Twitter API调用的建议?

提前谢谢你。

3 个回答

1

我只是有个直觉,虽然这个限制是以每小时请求次数来表示的,但并不意味着它是每小时来测量或执行的。

4

这是你的好帮手 -> Twitter API 的速率限制

花点时间阅读这个文档吧。

头信息

在响应中会返回一些速率限制状态的头信息,这些可能会对你有帮助。可以考虑在调试时记录这些信息。如果你的请求来自不同的IP地址,你可能会看到每次响应中报告的配额和使用情况不同。

白名单

如果你有很多用户,可以考虑把你服务器的IP地址加入白名单,这可能是一个解决方案。
有些托管服务提供商已经在白名单中,比如 Google App Engine。

4
>>> 3600./350
10.285714285714286

每11秒钟只发一条推文。

撰写回答