NanmiCoder/MediaCrawler

数据

一个覆盖七个中文社交平台的爬虫,帮需要研究数据的人批量采集帖子与评论。

68,564
13,049
Python
NOASSERTION
创建于 3 年前

如果你需要一批中文社交平台上的帖子和评论做分析,MediaCrawler 是少数用一个代码库覆盖七个平台的项目。它是爬虫,不是开箱即用的数据集,开源版也刻意没有包含部分运维性功能。

解决什么问题

想研究小红书、抖音、B 站或知乎上某个话题的讨论时,研究者通常要为每个平台各写一套采集脚本,每套都要处理登录、请求签名和翻页细节。真正重复的正是前半段工作:怎么保持登录态、怎么把关键词变成结果列表、怎么把嵌套的评论一层层翻完。MediaCrawler 把这段压缩成选择平台和采集类型:关键词搜索、指定帖子 ID、指定创作者主页、二级评论。最后得到本地的帖子与评论数据,可以进一步分析或生成词云。

有什么不同

它最关键的取舍在取数方式:不重写各平台的签名算法,而是用 Playwright 驱动真实浏览器。默认的 CDP 模式连接已打开的 Chrome,因此可以复用缓存的登录态。代价是每次采集都跑浏览器,比纯 HTTP 请求更重;换来的是只要能登录就能跑,且 CDP 模式下无需安装浏览器驱动。功能表列出了登录态缓存、IP 代理池等能力。

这种设计的另一面同样明显。项目付费的 Pro 版把"去掉 Playwright 依赖"作为卖点之一,说明浏览器驱动路线确实有资源开销。功能表对七个平台给出了相同的能力矩阵,但更准确的理解是采集入口统一,底层页面结构并不统一:登录流程、评论嵌套深度在不同平台上的表现会有差异,遇到问题时需要逐个平台排查。登录态缓存只是省去重复登录的便利,并不保证会话一直有效,多次运行仍可能需要重新认证。

谁值得试

适合:要用中文平台数据搭建一次性或周期性语料的学生和研究者,能接受配置 Python 和浏览器,不想自己写七套爬虫;WebUI 和关键词搜索路径也让主要想拿数据、不想写代码的人更容易上手。不适合:需要无人值守、跨多账号大规模长期采集的人。README 把断点续爬、多账号加代理池、完整 Linux 支持放在 Pro 版,说明有这些需求的人应单独评估 Pro,而不是默认开源版覆盖。

使用条件与边界

安装需要 Python 环境(推荐 uv)、Node.js 16 及以上,以及运行中的 Chrome(CDP 模式)或 Playwright 浏览器驱动(标准模式)。安装步骤见项目 README,uv 本身可参考官方安装指南;WebUI 另有演示页面。

日常使用有两项 README 没有消解的负担。其一,抓取社交平台是移动靶:平台一旦改动登录或页面结构,工具可能失效,需要等更新,时间上要留出余量。其二更重要,README 的使用目的限制明确禁止非法用途,以及学习研究之外的商业行为,用户应保证仅用于个人学习与技术研究。这是采用前必须核对的使用边界,尤其在公司或团队项目里。

HotRepo 点评

HotRepo 的记录从 2026-10-24 开始,唯一的日榜观测是 2026-10-25:当天 68,460 stars,单日增加 408。这一个快照只能说明关注的规模,不能说明趋势,持续性暂时无法判断。采用前真正该核对的是项目的使用限制,以及你是否需要只在 Pro 版提供的断点续爬能力——而不是星数。

本文由 AI 根据项目 README 生成,更新于 2026年10月25日,以项目官方文档为准。