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

问题描述 投票:0回答:1

我正在尝试在两年内为许多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_results限制为18,000将防止这一请求超过BBC新闻推文15分钟窗口的速率限制。每个请求中返回100个结果,因此18,000个结果将是100个结果* 180个请求。

这是行不通的,所以我认为我必须误会了。如果有人可以提供进一步的见解,那将是很好的。

python twitter twitterapi-python
1个回答
0
投票

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

仅标准API端点,不适用于高级API

每15分钟180个请求是指标准(旧版)1.1搜索API,限于7天的不完整索引。在具有沙箱的高级搜索中,如果要搜索完整的归档产品,则该月有50个请求,每个请求最多100条推文(请参阅应用程序仪表板的“订阅”部分)。在付费层中,您每月有100到2500个请求,每个请求最多可以覆盖500条Tweets,并且搜索规则更复杂(沙盒中128个字符中有1024个字符)

检查应用程序仪表板的“订阅”面板,该面板根据当月的请求说明您的位置。

© www.soinside.com 2019 - 2024. All rights reserved.