~/social/instagram-transcript-scraper

Instagram 转文字——Reels 视频转录与文案提取

把 Instagram Reels 和视频转成文字:粘贴链接或主页,批量获取带时间戳和语种的转录文本。无需登录。

媒体 TypeScript 全球
proooxy/instagram-transcript-scraper — 规格
分类social / 媒体
语言TypeScript
技术栈TypeScript
市场全球
输出干净、RAG 就绪的 JSON

核心特性

把每条公开 Reel 里的语音转成文字——完整转录加带时间戳的分段(start、end、text)

自动识别口语语言,也可以传入语言提示

同一行里附带文案、解析好的话题标签与 @提及、点赞、评论和时长——从主页 Reels 标签读取的 Reels 还带播放量

无需登录 Instagram,也不用自备语音转文字密钥——转录已包含在内

传入主页即可转录其 Reels 标签,数量不超过每个主页的 Reels 上限,也可选择同时转录其时间线,或直接给单条 Reel 链接

只获取音频,绝不下载整段视频

只有音乐或没有声音的 Reels 会返回 hasSpeech: false 的记录且不计费;语音引擎在音乐上凭空生成的填充文字会被丢弃

轮播图取其中第一个有声音的视频

应用场景

  • 内容调研——搜索创作者实际说了什么,而不只是文案写了什么
  • 对某个赛道里的每条 Reel 做关键词与品牌监控
  • 用 Reels 文本构建语料,用于 RAG、摘要和聚类
  • 字幕制作与内容再利用,每段都有起止时间
  • 创作者分析——聊某个话题是否带来更多播放?
  • 多语言监控,每行都标明识别出的语言

输入参数

参数类型必填说明
startUrlsarray可选主页或 Reel 的链接;也可以填写用户名,或两者同时填写
usernamesarray可选主页用户名,带不带 @ 均可;转录其 Reels 标签
maxReelsPerProfileinteger可选每个主页转录的视频数——同时也是成本控制(默认 10)
includeTimelineboolean可选同时转录主页帖子网格中的视频(默认关闭)
includeSegmentsboolean可选保留每段的时间戳(默认开启)
languagestring可选可选的语言提示,如 en、es 或 pt;留空表示自动识别
maxConcurrencyinteger可选同时转录的 Reels 数(默认 3)
maxRequestsPerCrawlinteger可选达到该请求数后停止;留空表示不限
proxyobject可选Apify Proxy,默认住宅代理,用于读取 Instagram

输出示例

 1{
 2  "type": "transcript",
 3  "source": {
 4    "id": "instagram",
 5    "canonicalUrl": "https://www.instagram.com/reel/DcozHIETCd9/",
 6    "username": "nasaadmin"
 7  },
 8  "id": "3974651461224900477",
 9  "shortcode": "DcozHIETCd9",
10  "url": "https://www.instagram.com/reel/DcozHIETCd9/",
11  "owner": {
12    "id": "79712351002",
13    "username": "nasaadmin",
14    "fullName": "NASA Administrator Jared Isaacman",
15    "isVerified": true
16  },
17  "takenAt": "2026-08-29T20:31:28.000Z",
18  "caption": "An unforgettable day at @nasajohnson. …",
19  "hashtags": [],
20  "mentions": [
21    "nasajohnson",
22    "potus"
23  ],
24  "durationSeconds": 114.566,
25  "likeCount": 51113,
26  "commentCount": 409,
27  "audioUrl": "https://…mp4",
28  "audioBytes": 1019785,
29  "transcript": "… 250,000 miles from Earth. Please join me in congratulating Commander Reed Weissman, Pilot Victor Glover, Mission Specialist Christina Koch, and Mission Specialist Jeremy Hansen. …",
30  "segments": [
31    {
32      "start": 30.12,
33      "end": 32.7,
34      "text": "250,000 miles from Earth."
35    },
36    {
37      "start": 32.7,
38      "end": 44.64,
39      "text": "Please join me in congratulating Commander Reed Weissman, Pilot Victor Glover, Mission Specialist Christina Koch, and Mission Specialist"
40    },
41    {
42      "start": 44.64,
43      "end": 45.98,
44      "text": "Jeremy Hansen."
45    }
46  ],
47  "language": "en",
48  "wordCount": 204,
49  "hasSpeech": true,
50  "transcriptModel": "whisper-large-v3-turbo",
51  "scrapedAt": "2026-10-20T01:52:23.613Z"
52}

定价

按事件计费:每保存一条有语音的转录计费一次。只有音乐或没有声音的 Reels,以及转录失败的记录,都会保存但绝不收费。

使用建议

先跑几条 Reels。 maxReelsPerProfile 同时也是成本控制:每条 Reel 对应一次下载和一次转录。 时间戳是免费的。 关闭 includeSegments 只会让记录变小,不会更便宜——时间信息来自同一次调用。 language 留空,除非所有 Reels 都是同一种语言;识别是逐条进行的。 还需要评论或主题标签? Instagram 爬虫读取同一批账号的帖子、评论、合作作者以及 Instagram 自己的主题标签。

常见问题

如何获取 Instagram Reel 的文字稿?
把 Reel 的链接填进 startUrls 并运行 Actor。文字在 transcript 字段,带时间戳的分段在 segments[]。视频帖(/p/)和 IGTV 链接(/tv/)用法相同。
可以批量转录 Instagram Reels 吗?
可以。给它多个 Reel 链接,或者主页:每个主页的 Reels 标签页会转录到 maxReelsPerProfile 为止,开启 includeTimeline 后还包括时间线。每个 Reel 一行。
需要 Instagram 账号或自己的语音转文字密钥吗?
都不需要。全程不登录,转录引擎由 Actor 提供。
只有音乐或没有声音的 Reel 会怎样?
它仍会得到一行记录,hasSpeech: false、转录为空,并且不计费。无声发布的 Reel 在下载任何内容之前就会被识别出来。转录失败的 Reel 会在 transcriptError 里说明,同样不计费。
转录准确度如何?
对原始音频使用 Whisper 级别的语音识别。音乐、浓重口音、多人同时说话和嘈杂场景是任何引擎都吃力的地方;用 segments[] 可以发现并裁掉这些部分。
能翻译吗?
不能——它按口语原文返回文字,并告诉你是哪种语言。

~/social 下的相关工具

运行 Instagram 转文字——Reels 视频转录与文案提取,或定制专属方案

几分钟内即可在 Apify 上开始提取数据,或聘请我为你的目标源和 schema 定制专属爬虫与 RAG 管道。

在 Apify 上运行 获取定制数据