主页批量提取 MCP:批量下载博主、话题和播放列表的视频
想备份一个博主的公开作品,整理一组话题素材,或者下载播放列表里的课程视频,逐条复制分享链接会很费时间。使用主页批量提取 MCP,可以让 AI Agent 从列表链接开始,逐页取得帖子,再把视频、图片和音频下载到指定目录。
哼哼猫 MCP 的 extract_playlist 就用于这类任务。它接收受支持的博主主页、频道、播放列表、合集或 Hashtag/话题链接,每次返回一页帖子。本文重点讲如何翻页、去重和保存进度,让批量下载的结果容易检查和继续处理。
批量提取 MCP 适合哪些需求?
| 需求 | 可以怎样整理 |
|---|---|
| 博主作品备份 | 按帖子分别保存公开视频和图片,保留原帖来源 |
| 播放列表批量下载 | 按返回顺序编号,整理课程或系列视频 |
| 话题、Hashtag 素材收集 | 汇总当前可获取帖子,筛选需要的媒体 |
| 图集批量保存 | 每个帖子单独建目录,图片按顺序编号 |
| AI Agent 素材整理 | 生成帖子清单、文件清单,再选择内容提字幕或文案 |
这里有两个环节:列表提取取得媒体信息与下载地址,文件下载由 Agent 执行。想把资源保存到电脑,需要使用具备 HTTP 下载和本地文件保存能力的 Agent。
不同平台支持的列表类型有所区别,按主页与播放列表批量提取文档选择入口。单帖提取支持的站点范围,不等于所有站点都提供主页批量提取。
第一步:接入 MCP,确定这次整理的范围
按哼哼猫 MCP 接入说明,将服务连接到 WorkBuddy、Codex 等 Agent,并确认工具列表里有 extract_playlist。
开始前准备三项信息:
- 列表链接:博主主页、频道、话题或播放列表地址。
- 保存目录:例如电脑上的一个课程或素材文件夹。
- 处理范围:先处理返回的前 20 条,或者持续翻页,整理全部可获取帖子。
先用少量内容确认文件和目录符合预期,再扩大范围,更容易发现选错主页、下载档位或媒体类型等问题。如果只需要保存一条帖子,直接使用视频提取与下载 MCP 教程中的 extract_post 即可。
第二步:复制提示词,批量下载并保存清单
将下面的列表链接、数量和目录换成自己的内容:
请使用哼哼猫 meowload MCP,整理下面列表中的帖子并下载媒体。
1. 调用 extract_playlist,第一页只传 url,不传 cursor。
2. 逐页读取 posts,逐条处理:按平台和帖子 ID 去重;缺少 ID 时,
使用原帖链接。将标题、来源链接等实际返回的信息保存为清单。
达到目标数量后停止当前页剩余帖子的下载,并保存页内停止位置。
3. 每页提取后,及时下载其中的视频、图片和音频。
下载使用该媒体返回的 headers;多个视频档位优先选择
is_default 为 true 的推荐档位。同一档位有 video_url 和
audio_url 时,分别下载并合并为带声音的视频。
4. 图片在各自帖子目录中按返回顺序编号。
在清单中记录每个文件的路径、下载状态和失败原因。
5. 若未达到目标数量,且 has_more 为 true,将 next_cursor
原样作为下一次 cursor,继续查询同一个列表 URL。
has_more 为 false 时结束。若游标为空或重复,停止并说明。
6. 每页处理后保存进度,包括列表 URL、当前页游标、
下一页游标、页内位置和已完成帖子。中断时报告停止位置。
7. 最后汇总取得的帖子数、下载的文件数和待处理项。
列表链接:<填写受支持的主页、话题或播放列表链接>
目标数量:<例如前 20 条,或全部可获取帖子>
保存目录:<填写本地目录>
只想收集视频,可以将第 3 步改为“只下载视频”;只需要图片,就要求“仅保存返回的图片媒体”。先说明目标,Agent 就能按媒体类型组织结果。
第三步:看懂游标分页,避免只取得第一页
extract_playlist 的调用参数很简单。以下链接、ID 和返回内容均为结构示例。
第一页:
{
"url": "<受支持的列表链接>"
}
结果里需要关注三个字段:
{
"posts": [
{
"id": "EXAMPLE_POST_ID",
"title": "示例课程",
"post_url": "https://www.example.com/video/123",
"medias": [
{
"media_type": "video",
"resource_url": "https://media.example.com/lesson.mp4"
}
]
}
],
"has_more": true,
"next_cursor": "<服务返回的下一页游标>"
}
posts[] 是这一页的帖子,不是整个主页。每条帖子的媒体结构与单帖提取一致,视频也可能有多个档位和独立音轨。
has_more 为 true 时,用上一页的 next_cursor 继续调用:
{
"url": "<同一个列表链接>",
"cursor": "<上一页返回的 next_cursor>"
}
保持列表 URL 不变,游标原样传递;取得末页后停止。不要把游标改成自己计算的页码。主页有新帖子或列表内容发生变化时,页与页之间可能出现重复,用帖子标识去重比用标题或临时媒体地址更合适。
下载清单怎样组织,后续才好继续?
可以要求 Agent 给每个帖子建目录,文件名带上帖子 ID 和媒体序号,并额外保存一份 CSV 或 JSON 清单:
| 记录 | 用途 |
|---|---|
| 列表 URL、当前页与下一页游标、页内位置 | 知道已经处理到哪里 |
| 平台、帖子 ID、原帖链接 | 识别重复帖子,重新找到来源 |
| 标题及实际返回的发布时间 | 方便检索和整理,有值时再记录 |
| 媒体类型、本地路径、完成状态 | 区分已下载文件与待处理文件 |
| 失败原因 | 单独处理过期链接、下载异常等问题 |
清单中有媒体链接,不等于文件已经下载完成。 保存状态时,以实际文件下载结果为准。成功下载的帖子与失败的帖子分开记录,恢复处理时就能先补缺项。
媒体地址通常有时效,因此适合每页提取后及时下载。中断后可以让 Agent 读取上次保存的游标和清单,尝试继续处理;如果原游标已不可用,重新从列表读取,并跳过已经完成的帖子。需要重取过期媒体地址时,保留的原帖链接也能用于单帖提取。
常见问题
为什么拿到的数量和主页显示的作品总数不同?
先确认是否按 has_more 继续翻页,以及本次是否设置了数量范围。主页展示的总数和当前列表可返回的帖子不是同一项数据;最终能整理的内容,以平台当前可获取的列表结果为准。
为什么有些视频下载后没有声音?
检查选中的档位是否同时返回了 video_url 和 audio_url。音视频分离时,要取得两份文件后合并;仅保存画面文件就可能没有声音。
取得列表后,还能继续提取字幕或视频文案吗?
可以先从帖子清单中选择需要处理的视频,再按字幕提取 MCP 教程读取可用字幕,或按音视频转文字 MCP 教程识别音轨。批量归档负责保存资源,字幕与语音识别负责把选中的内容变成文字,组合后更适合整理课程和系列视频。