如何使用带geocode参数的Tweepy搜索API获取包含转发的结果
问题原因
Twitter v1.1 标准搜索API的geocode参数默认仅匹配携带独立地理位置标记的推文。绝大多数转发不会单独标注地理位置,地理信息继承自原推文,因此添加geocode参数后会被默认过滤。未添加geocode参数时API不会开启这部分过滤逻辑,因此可以正常返回转发内容。
调整方案
- 在搜索关键词参数
q中显式追加include:retweets操作符,强制API返回符合地理范围规则的转发内容,该操作符不会屏蔽符合条件的原创推文 - 调整后的调用代码如下:
# 拼接原有搜索词和转发包含规则 searchString = f"{searchString} include:retweets" cursor = api.search(q=searchString, geocode=geocode, count=20, lang='en', tweet_mode='extended')
补充说明
如果调整后仍存在转发获取不全的情况,可以适当放宽geocode参数的搜索半径范围,部分转发继承的原推文地理定位精度较低,过小的搜索半径会导致这部分内容被过滤。
内容的提问来源于stack exchange,提问作者Sachin Kushwah
相关产品推荐
相关产品推荐

