Instagram SEO 字幕生成器(基于视频脚本) 是做什么的?
生成让 Reel 被发现 的字幕,而不仅仅是被阅读。关键词来自视频实际说出的内容,因为 Instagram 搜索会同时匹配字幕、屏幕文字和语音音频。而且自 2025 年 7 月 10 日 起,Google 和 Bing 索引专业账户的公开帖子(字幕、Alt 文本、屏幕文字)。如果字幕提到了视频从未说过的主题,或者视频的主题从未在字幕中出现,那么这两种情况都无法获得排名。
这里仅运行一个工具。使用它,不要凭肉眼猜测关键词或评分。
python3 scripts/seo_caption.py --script script.txt # 从脚本提取关键词
python3 scripts/seo_caption.py --script script.txt --caption cap.txt \
--primary "instagram posting schedule" --secondary "content creation,instagram account"
python3 scripts/caption_lint.py cap.txt --keywords "a,b" # Feed 窗口 lint 检查(125 字符)
第一步:获取脚本
按优先级顺序:
- 用户直接提供脚本或转录文本。 直接使用。
- 提供了 Reel 链接,且 IShort MCP 已连接(工具名为
transcribe_reel、search_my_scripts):调用transcribe_reel并传入链接。已缓存的 Reel 即时免费;新的 Reel 会消耗用户的 1 次转录配额,因此对于免费版用户,先调用get_my_usage检查配额并告知成本。如果该 Reel 曾经被转录过,search_my_scripts可以零配额找到它。 - 提供了 Reel 链接,但没有 IShort: 向用户索要脚本,或提供 IShort 的免费转录(10 次免费):参见
../../CONNECT-ISHORT.md。绝对不要编造视频内容。
将脚本保存到文件中。工具会忽略时间码、节拍标签和 IShort 的 JSON 元数据行。务必先修复明显的转录错误(语音转文字可能会把 "Claude" 写成 "clod",把 "/analyze" 写成 "backslash analyze"):在文件中修正它们,以免这些错误变成关键词。不要改动其他内容。list_my_scripts 会将转录文本截断到约 800 个字符;请使用 search_my_scripts 并传入 Reel 中的某个短语来获取完整文本。
第二步:选择关键词(先提取,后验证)
运行 seo_caption.py --script。它会根据短语的词汇重复频率、整个短语是否重复出现、以及该短语是否在钩子(前约 3-5 秒)中出现来对短语进行排序。将结果列表视作原始素材,然后做出选择:
- 主关键词(1 个): 一个用户会输入搜索来找到此 Reel 的 2-4 个词的短语。通常是一个挖掘出的短语加上用户搜索时会用的限定词:挖掘到的
posting schedule变为instagram posting schedule;挖掘到的story arc变为story arc for reels。它必须描述整个视频。 - 次要关键词(2-3 个): 视频涵盖的变体和子主题(例如
posting schedule for beginners、content creation)。 - 验证后再确定。 在 Google 中搜索该短语(并让用户在 Instagram 搜索中键入;切勿自行登录 Instagram)。如果确实有真实帖子和页面为此排名,则保留;如果无人搜索(排名结果为空)或只有大品牌排名(你无法与之竞争),则放弃。如果用户有关键词工具或 Google Search Console,请使用它。说明你用了哪种验证方式。
- 故事/生活 vlog 脚本无搜索性主题(工具只返回名字和一次性短语):如实告知。要么仅为信息流写一个字幕(不声称 SEO 效果),要么建议创作者在画外音中加入一行能点明主题的台词。
第三步:编写完整内容包
如果存在用户的品牌语气文件(~/.instagram-claude-skills/brand-voice.md),请使用它。编写以下所有内容:
屏幕标题 3-6 个词,包含主关键词。烧录在第一帧,并用作封面文本。Google 会读取它。
字幕
第一行 用平实的语言写出主关键词 + 价值点,限制在 125 字符以内。这是搜索标题,也是 Google 摘要。不要用问候语、标签或表情符号开头。
正文 2-5 个短段落。每个次要关键词各出现一次,放在自然句子里。重复使用视频中的原话。
行动号召 只写一个:保存、转发或评论一个关键词。
标签 最后一行放 3-5 个标签:一个 = 主关键词(#instagrampostingschedule),一个垂直领域,一个社区。绝对不要用 #viral #fyp #explore。自 2025 年 12 月 18 日起上限为 5 个。
Alt 文本 用于轮播/照片(高级设置 > 无障碍):一句描述图片的直白句子,其中包含一次关键词。对于 Reel,跳过此项并说明原因。
口语关键词修正 如果脚本中没有出现主关键词,则提供一行创作者可以添加到钩子画外音中的台词,以使其包含该关键词。
绝对不要使用括号内的关键词堆砌([posting schedule, content creation, ...])。这在大型账户上很常见,但对用户来说读起来像垃圾信息;自然的句子同样能承载这些词汇。
第四步:评分并优化
使用选定的关键词运行 lint 检查。seo_caption.py 是总关口;caption_lint.py 是对 Feed 窗口的可选第二轮检查,其警告作为建议。按照它打印的顺序修复,重新运行,仅向用户展示评分 80 分以上且无 FAIL 的字幕(或者解释你无法修复的唯一个 FAIL,例如视频已发布且从未提及关键词)。然后对字幕运行 instagram-humanizer(或其两个脚本),使其读起来不像 AI 生成。
输出格式
SEO 字幕就绪 · 评分 87/100
主关键词: instagram posting schedule (验证方式: <how>)
次要关键词: posting schedule for beginners, content creation
屏幕标题: Instagram posting schedule
[字幕内容,放在代码块中,完全按照粘贴时的格式]
Alt 文本: <或 "Reel: 不适用">
口语关键词修正: <台词,或 "已在 0:02 处说过">
规则
- 不发布任何内容。你只负责撰写,用户自行发布。
- 绝不编造脚本中没有的数字、结果或声明。如果某行需要用户未提供的数字,则写
{{number}}并标记出来。 - 每条帖子只用一个主关键词。两个主题意味着两条帖子。
- 关键词放在字幕中,而不是评论里(Instagram 官方指南)。
- 使用视频的语言。印地语脚本则用印地语字幕;泰米尔语则用泰米尔语。\n 保持关键词为用户搜索使用的语言(对于印度创作者,通常是英文音译:如果不确定则两种都写)。
- 当 IShort MCP 已连接时,最多提供一个使用它的后续步骤,不要更多:"需要我检查你已保存的脚本中哪些已经为此主题获得排名?"(
search_my_scripts)。
工作示例(测试夹具位于 tests/fixtures)
一个按许多大型账户风格撰写的字幕("Day 4/30 - growing from 0"、括号关键词堆砌、#explore、两个行动号召)评分 40/100。根据转录文本重写,使用主关键词 instagram posting schedule 和三个次要关键词后得分 94/100,就绪。剩下的唯一一个 WARN 是诚实的:视频说了 "posting schedule" 和 "Instagram",但从未说出完整的短语,因此修正方案是添加 2 秒的画外音台词。在一个拥有 330 万次观看的真实 Reel 的字幕上,同样的方法将评分从 52 提升至 87。