抖音 · 视频 + 图文

抖音文案提取:
视频逐字稿、屏幕文字、图文笔记

一条抖音链接,返回带时间戳的逐字稿、视频里烧进画面的字、图文笔记每张图的描述,以及正文和要点。 只有文本,没有视频文件。

先说清楚

无水印无关:我们只返回文本

搜「抖音文案提取」的大多数结果是去水印下载工具。这里不是。你拿到的是逐字稿和屏幕文字, 不是 mp4。媒体在请求返回前删除,不存储、不提供下载。要的是内容,不是文件。

拿到什么

三层文本

transcript

逐字稿,{ t, text },t 是秒。来自 ASR(SenseVoice), 抖音不发布字幕。

ocr_text

抽帧后读出的屏幕文字:烧进画面的字幕、标题条、贴纸上的字。

images / key_points

图文笔记每张图的描述与 OCR;所有类型都有要点、正文、作者、发布日期。

抖音不谈判

会话是我们的,不是你的

抖音对匿名请求直接拒绝:网页给验证码,接口返回 403。yt-dlp 不支持抖音,这条路从头到尾是我们自己写的, 跑在我们自己的会话 cookie 上。你不用登录、不用提供任何 cookie。

会话会过期,过期时抖音返回的是空响应而不是报错,所以我们单独监控它。覆盖表上每个平台有「最近验证」时间和状态,也可以直接读 GET /api/v1/health/platforms,不需要 key。

用法

一条真实的请求

v.douyin.com 短链和 douyin.com/video/… 都可以。

curl -X POST https://linkdigest.dev/api/v1/digest \
  -H "Authorization: Bearer ld_live_..." \
  -H "Content-Type: application/json" \
  -d '{"url": "https://v.douyin.com/VeXgdE_QwTE", "format": "json"}'

这条链接是首页示例之一,已经被读过并缓存,所以会直接返回 200, 不扣额度。换成你自己的链接:图文和短帖直接返回;需要下载并转写的视频返回 202 和一个 jobId,用同一个 key 去 GET /api/v1/digest/JOB_ID 取结果。

MCP · Claude Code / Cursor

claude mcp add --transport http linkdigest \
  https://linkdigest.dev/mcp \
  --header "Authorization: Bearer ld_live_..."

不支持的

先说做不到的

接进去之后才发现读不出来,比现在就知道更糟。以下是明确不支持的,写在这里也写在覆盖表上。

平台 / 类型原因
B站(哔哩哔哩)对我们服务器的地址直接返回 HTTP 412,请求到不了视频。需要代理,目前没有。
X 长文(Articles)只能拿到首图。普通帖子的图片、视频都能读,长文正文读不到。
Instagram代码已接入,但没有端到端验证过,所以不算支持。

价格

按工作量计费,不按链接数

dev

$9/月

每月 500 个 credit(积分)。一条普通图文笔记 1 积分,约 $0.018; 视频每开始的 1 分钟 2 积分,一条 10 分钟的视频按公式是 21 积分,约 $0.38

不计费的

任何人读过的链接再读都免费、不计额度。读不出内容的链接(没有逐字稿、没有屏幕文字、没有图片描述)不收费, 并在一小时内允许重试,而不是把一份空结果缓存一个月。注册有免费试用额度,不用绑卡,具体数字见定价页

常见问题

会被问到的

能去水印下载抖音视频吗?
不能,也不做。这个服务只返回文本:逐字稿、屏幕文字、图片描述、正文和要点。视频在临时目录里处理,请求返回前就删除,不存储、不提供下载。
抖音文案提取需要我登录吗?
不需要你做任何事。抖音拒绝匿名请求——网页给验证码,接口返回 403——所以这条路跑在我们自己的会话 cookie 上。会话会过期,过期了由我们续,覆盖表上有最近一次验证的时间。
逐字稿准吗?有时间戳吗?
抖音不发布字幕,逐字稿来自 ASR(SenseVoice),中文上明显优于 Whisper 一类模型,每段带秒级时间戳。transcript_source 字段会写明是 asr 还是平台字幕。
图文笔记(图文)也支持吗?
支持。每张图描述一遍并做 OCR,和视频走同一个返回结构。
v.douyin.com 的短链能直接用吗?
能,短链先解析再读取。同一条视频的不同分享链接会命中同一份缓存,第二个人读不扣费。

先免费试,不用绑卡。支持的平台上有链接读不出来,就是一个值得报告的 bug。