关于Twitter/X API v2获取指定用户推文、点赞数据的技术咨询
问题解答与建议
1. 有用户许可的情况下,能否通过API获取指定账户的推文和点赞?
- 完全可以,只要你获取的是公开数据且已得到用户明确许可用于研究,符合Twitter的服务条款:
- 推文:使用API v2的
/2/users/{id}/tweets端点,可获取目标用户发布的公开推文; - 点赞:使用
/2/users/{id}/liked_tweets端点,可获取目标用户点赞过的公开推文; - 注意:API调用需要先将用户名转换为用户ID(可通过
/2/users/by/username/{username}端点实现)。
- 推文:使用API v2的
2. 免费版API能否实现?
目前Twitter API v2免费版的权限和额度存在明确限制,需澄清你看到的两种说明:
- 免费版可以获取用户推文,当前官方规定的月度额度为1500条拉取的推文(不是请求次数);
- 免费版无法获取用户点赞的推文,该权限仅对基础版(Basic Tier,每月100美元)及以上开放;
- 你看到的“拉取额度为0”的说明是旧版本的政策,已被更新,需以当前开发者平台的官方限制为准。
3. 其他合法获取Twitter/X数据的方式
- 学术研究API(Academic Research Tier):专为学术研究人员设计,提供极高的数据拉取额度(每月千万级推文),支持批量获取用户数据,需通过官方申请(需提供学术机构证明、研究方案等);
- 合规第三方数据服务商:部分服务商通过官方API授权获取并整理Twitter数据,可按需购买批量数据集,但需确认服务商符合Twitter的服务条款;
- 用户授权OAuth流程:若用户同意,可通过OAuth2.0让用户授权你的应用,获取更高权限的数据,但批量操作时需逐个用户授权,效率较低。
实操建议
- 若需批量获取大量用户数据,优先申请学术研究API,免费版额度完全无法满足批量需求;
- 测试阶段可先用免费版验证端点功能,但需注意额度消耗;
- 严格遵守研究伦理:对用户数据进行匿名化处理,仅用于获批的研究目的,不得泄露或商用;
- 使用官方SDK(如Python的
tweepy)简化API调用,自动处理请求频率限制; - 定期关注Twitter API政策更新,避免因规则变动导致数据获取中断。
内容的提问来源于stack exchange,提问作者Francesca
相关产品推荐
相关产品推荐

