使用沙盒环境和searchtweets API了解Twitter API速率限制

2024-04-26 21:21:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图在两年内为一些Twitter用户推特。我正在使用Python中的searchtweets库和该API的沙盒版本

我正在使用他们的结果流方法:

import searchtweets
rule = gen_rule_payload("from:BBCNews", from_date="2017-01-01",
                            to_date="2017-01-01", results_per_call=100) 
rs = ResultStream(rule_payload=create_rule(i),
                                  max_results=18000,  
                                  max_pages=1,
                                  **premium_search_args) # these are credentials, ommitted for security 
                    tweets = list(rs.stream())

然而,我得到的回报是:

HTTP Error code: 429: Request exceeds account’s current package request limits. Please upgrade your package and retry or contact Twitter about enterprise access.

我已经审查了速率限制(https://developer.twitter.com/en/docs/basics/rate-limiting),并认为我已经正确地推断出此类请求的速率限制为每15分钟180次,因此将max_结果限制为18000次将防止BBC新闻推特的请求超过15分钟窗口的速率限制。每个请求返回100个结果,因此18000个结果将是100个结果*180个请求

这不起作用,所以我想我一定是误解了。如果有人能提供一些进一步的见解,那就太好了


Tags: 用户from沙盒apipackagedate速率twitter
1条回答
网友
1楼 · 发布于 2024-04-26 21:21:07

您所引用的网页状态(顶部第一行):

Standard API endpoints only, does not apply to premium APIs

每15分钟180个请求是指标准(传统)1.1搜索API,仅限于7天的非完整索引。在使用沙箱的premium search中,如果您正在搜索完整的存档产品,则您当月有50个请求,每个请求最多有100条tweet(请参阅您的应用程序仪表板“订阅”部分)。在付费层中,您每月有100到2500个请求,每个请求最多可覆盖500条推文,搜索规则更为复杂(沙盒中128个字符中有1024个字符)

查看“应用程序仪表板订阅”面板,该面板解释了您当月的请求情况

相关问题 更多 >