面向学术研究的推特(X)数据接口

2023 年 X 关停免费的 Academic Research Track 时,支撑了近二十年推特研究发表的全量档案和高用量访问一并消失。 Sorsa API 把这份访问权还回来, 对通过审核的非商业研究者免费或折扣开放

  • 全量档案搜索可回溯到 2006 年 3 月,研究者依赖的高级操作符一个不少:from:、to:、since:、until:、lang:、精确短语和话题标签。
  • 每次请求可补全最多 100 个推文 ID,可直接替代已经失效的 Hydrator 和基于官方接口的 twarc 流程。
  • 用一个密钥只读访问公开数据 :无需开发者账号审批,无需 OAuth,也不用签 4.2 万美元的企业合同。

或者直接写信给我们: contacts@sorsa.io


缺口

研究者在 2023 年失去了什么

十七年里,推特接口一直是政治学、公共卫生、计算社会科学、传播学和语言学的主流数据源。关于选举、虚假信息和危机传播的大量研究都建立在这套数据之上。Academic Research Track 给通过审核的研究者提供可回溯到 2006 年的全量档案搜索,每月约 1000 万条推文。2023 年 2 月宣布之后,免费接口访问在那个春天被切断,到 2023 年年中,学术接口被完全下线。替代的套餐对研究几乎没有用:100 美元的基础套餐不含历史数据,企业合同则从每月约 4.2 万美元起。一百多项研究被取消或搁置。想更深入了解如何获取旧推文,可以看我们关于 推特历史数据的指南。


能力

搭建推特数据集所需要的一切

核心差异

共享数据集的推文 ID 补全

为了符合 X 的条款,共享的研究数据集通常以推文 ID 列表的形式分发。以前补全这些 ID 要走官方接口,靠 DocNow Hydrator 或 twarc 这类工具,而免费和学术访问结束后,两者都失效了。Sorsa 的批量接口每次接受 最多 100 个推文 ID ,返回完整的推文 JSON,并附带作者资料,无需开发者账号,也无需 OAuth。每条推文还带有 view_count 和 bookmark_count ,这两项互动指标官方接口并不对第三方推文开放。

在 Sorsa 上补全 100 万个推文 ID,正好是 49 美元 Starter 套餐一个月的全部额度
$49
1 万次批量请求 · 每次 100 个 ID
同样的量在官方推特接口上按帖子读取计费
~$5,000
按帖子读取计价

全量档案搜索可回溯到 2006 年

用推特的 高级搜索语法检索完整的公开档案:from: 和 to: 按账号采集,since: 和 until: 圈定时间窗口,lang: 过滤语言,再加上精确短语和话题标签。像 Academic Track 允许的那样,搭建纵向数据集、事件窗口和关键词语料。可以看我们关于 用接口搜索推文的开发指南,或者 导出一个账号的全部推文

可复现、可共享的数据集

每条响应都带有稳定的推文 ID 和用户 ID,因此你可以在论文旁附上符合条款的 ID 列表,让别人复现你的采集。输出是干净的 JSON,可以直接进 R、pandas 或者你的 notebook,随后接 情感分析 等下游流程。

简单、便于伦理审查的访问方式

请求头里放一个密钥,只读,只取公开数据。没有可发布的内容,也没有代表谁行事的账号,因此在 IRB 或伦理审查里描述采集过程会很直白。没有申请队列,也不用等审批。


访问方式对比

Academic Track、官方推特接口和 Sorsa

Academic Research Track2023 年以前官方推特接口2026 年,按量付费Sorsa按请求固定计费
全量档案搜索有,可回溯到 2006 年仅企业套餐有,可回溯到 2006 年
每月用量约 1000 万条推文按帖子读取计量固定套餐,任意用量
审批流程申请加审核,数周需要开发者账号审批没有,立刻拿到密钥
免费起步需要申请没有100 次免费请求
认证方式OAuth 加 bearer 令牌OAuth 2.0单个 ApiKey 请求头
100 万条推文的成本通过审核则免费~$5,000学术用途免费或折扣
互动指标点赞、转发、回复对第三方推文有限点赞、转发、回复,外加 view_count 和 bookmark_count

开发体验

几行代码补全一个数据集

每次调用最多发 100 个推文 ID,按 100 个一批循环你的数据集,把结果写进 .ndjson 供分析。完整配置见 历史数据文档

Python
import requests

ids = ["1266876474440761346", "1266868259925737474"]  # up to 100 per request

res = requests.post(
    "https://api.sorsa.io/v3/tweet-info-bulk",
    headers={"ApiKey": "YOUR_API_KEY"},
    json={"tweet_links": ids},
)

for tweet in res.json()["tweets"]:
    print(tweet["full_text"], tweet["user"]["username"])

给研究者

免费和折扣的学术访问

谁符合条件: 教师、博士后、博士与硕士研究生,以及做非商业项目的公民社会研究者。硕士论文、博士论文和有经费的教师课题都算。 你会得到什么: 用于试点研究的免费请求额度,或者更大规模采集时长期有效的付费套餐折扣。我们 在两个工作日内回复

申请方式:用你的机构邮箱(.edu 或你所在大学的域名)写信到 contacts@sorsa.io ,或者用下面的表单,说明你的研究问题、打算怎么用数据,并确认项目是非商业性质的。 如有需要,我们会为 IRB 和伦理审查提供数据使用与合规说明函。 按请求固定计费的套餐在经费申请里也是一笔固定、可预估的支出,不像官方接口那样按量计价。

申请学术访问

工作超出学术研究的范围?

如果你的用途是商业的,或者只想拿标准接口访问而不走申请,我们有按请求固定计费的套餐,覆盖任意用量。完整说明在价格页。

查看价格

典型场景

研究者怎么用 Sorsa

320 万
个推文 ID = 3.2 万次批量请求,远低于 Pro 套餐一个月的额度

设想一个研究选举话语的传播学团队,手里有合作实验室共享的 320 万条推文 ID 数据集。Academic Track 关停之后,像他们那样的 twarc 流程只会返回认证错误。在 Sorsa 的批量接口上,这 320 万个 ID 相当于 3.2 万次每批 100 个的请求,大约是 Pro 套餐一个月额度的三分之一,按每秒 20 次请求算,大约 30 分钟就能跑完。补全工作照常继续,不需要企业合同,采集方法也不用改。


常见问题

常见问题

可以用 Sorsa 补全推文 ID 数据集吗?

可以。批量接口每次请求接受最多 100 个推文 ID,返回完整的推文内容和作者资料。它可以直接替代那些依赖官方接口的老式补全工具,只需要一个密钥,无需开发者账号,也无需 OAuth。

Sorsa 覆盖旧推文和全量档案吗?

覆盖。全量档案搜索可以取到 2006 年 3 月以来的公开推文,并支持账号、日期区间、语言、短语和话题标签这些标准高级操作符。

需要推特(X)开发者账号或者 OAuth 吗?

不需要。访问方式就是在请求头里放一个密钥。没有申请队列,不用等审批,也没有 OAuth 流程。

这些数据适合 IRB 或伦理审查吗?

Sorsa 只读,且只返回公开数据。没有写操作,也不代表任何账号行事,采集过程因此很好描述。如有需要,我们会为 IRB 和伦理审查提供数据使用与合规说明函。

有学术折扣或免费访问吗?

有。对通过审核的非商业学术研究,我们提供免费或折扣访问。请用机构邮箱写信到 contacts@sorsa.io,简要说明项目和数据用途,我们会评估。

补全会返回已删除或受保护的推文吗?

不会。和任何补全一样,只有仍然公开的推文才会返回。原始采集之后被删除或转为私密的推文无法恢复,这在所有方法里都一样,属于预期之内。

Sorsa 能为研究发推文或运营账号吗?

不能。Sorsa 严格只读,且只覆盖推特(X)。它不发帖、不回复、不关注,也不做任何写操作。

开始你的研究

可回溯的推特(X)全量档案搜索和按推文 ID 的数据补全,价格固定,适合课题经费。只读、公开数据、一个密钥。前 100 次请求免费:无需绑卡,永不过期。