MediaCrawler 是 GitHub 开源的多平台自媒体数据采集工具,集成小红书、抖音、快手、B 站、微博、贴吧、知乎 7 大主流平台。基于 Playwright 浏览器自动化复用登录态,绕过 JS 逆向签名难题,支持关键词搜索、二级评论、IP 代理池、词云图分析,WebUI 可视化操作。仅供学习研究。
🎤 引言
做新媒体运营、市场调研、竞品分析的兄弟姐妹们,应该都踩过同一个坑:想批量看看小红书/抖音/B站某个关键词下的内容趋势,手动一条条翻评论翻到眼花。
传统爬虫方案有两条路:
- 逆向工程派:抓包 → 找签名算法 → 用 Python/Node 重写 → 平台一升级就崩。门槛高、维护地狱。
- 接口调用派:买第三方数据 API(八爪鱼、Apify、Scrapingbee)。数据不错但贵,每条几毛钱,月预算轻松破万。
MediaCrawler 走了第三条路——用 Playwright 浏览器自动化框架保留你的登录态,直接在浏览器上下文里通过 JS 表达式拿签名参数。完全不用逆向任何加密算法,风控风险降到最低。
GitHub 36k+ Stars 的明星项目(仅次于 Helicone AI Gateway 那种 AI 神器),覆盖小红书、抖音、快手、B站、微博、贴吧、知乎 7 大主流平台,开箱即用。
⚠️ 重要声明:本项目仅供学习研究使用,禁止商业用途。爬虫需遵守相关平台 robots 协议和当地法律法规。
⭐ 核心亮点
1. 7 大主流平台统一接口
不像很多爬虫只支持 1-2 个平台,MediaCrawler 一上来就全平台覆盖:
| 平台 | 关键词搜索 | 指定 ID | 二级评论 | 创作者主页 | 登录态缓存 | IP 代理池 | 词云图 |
|---|---|---|---|---|---|---|---|
| 小红书 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 抖音 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 快手 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| B 站 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 微博 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 贴吧 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 知乎 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
一个项目搞定所有平台,不用为每个平台单独写爬虫。
2. Playwright + 登录态复用 = 0 逆向
这是 MediaCrawler 最大的技术亮点。完全不用 JS 逆向:
- 用你已有的 Chrome 浏览器(CDP 模式),不是无头浏览器
- 浏览器里已经登录了小红书/抖音 → cookie 自动复用
- 通过 JS 表达式直接在浏览器里调用原网站的签名函数拿参数
- 平台升级签名算法?不用管——浏览器自己会更新
对比传统逆向:
- ❌ 传统:抓包找 X-Sign 算法 → 用 Python 重写 → 平台换算法就崩
- ✅ MediaCrawler:浏览器自动跟踪最新签名 → 永远不过期
3. WebUI 可视化操作
不是只能命令行用!MediaCrawler 自带 WebUI:
- 可视化配置爬虫参数(平台 / 登录方式 / 爬取类型)
- 实时查看运行状态和日志
- 数据预览和导出
- Vite + FastAPI 全栈架构(学习价值也很高)
打开浏览器就能用,不用记命令行参数。
4. 7 种数据存储格式
数据导出支持:
- CSV — Excel 直接打开
- JSON — 程序处理
- JSONL — 大数据流式
- Excel — 带格式
- SQLite — 本地数据库
- MySQL — 生产数据库
- JSON + CSV — 组合导出
不用自己写存储逻辑,config/base_config.py 改一行就行。
5. 二级评论 + 创作者主页 + 词云图
不只是抓帖子,还能:
- 抓帖子的二级评论(评论的回复)
- 抓指定创作者主页所有内容
- 自动生成评论词云图(一键可视化关键词频率)
市场调研、用户画像、舆情分析直接出报告。
6. Pro 版:断点续爬 + AI Agent
免费版已经很能打,MediaCrawlerPro 订阅版更强:
- ✅ 断点续爬(挂了从断点继续,不用从头来)
- ✅ 多账号 + IP 代理池(大规模采集)
- ✅ 去除 Playwright 依赖(更轻量)
- ✅ Linux 完整支持
- ✅ AI Agent Skill 支持(OpenClaw 🦞 / Claude Code / Cursor 一键安装,让 Agent 自动爬数据)
- 🚀 评论分析 AI Agent 开发中
如果做大规模采集,Pro 版是省时间利器。
🛠️ 快速上手(5 分钟跑通小红书爬虫)
前置环境:
- Python 3.11+(推荐用
uv管理) - Node.js 16+(抖音/知乎需要)
- Chrome 浏览器 144+
1. 安装 uv(如果还没有)
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# 验证
uv --version2. 克隆项目 + 安装依赖
git clone https://github.com/NanmiCoder/MediaCrawler.git
cd MediaCrawler
uv sync3. 开启 Chrome 远程调试
打开 Chrome 地址栏输入 chrome://inspect/#remote-debugging,勾选 "Allow remote debugging for this browser instance"。
页面显示 Server running at: 127.0.0.1:9222 即就绪。
4. 启动爬虫(二维码登录)
# 小红书:关键词搜索 + 二维码登录
uv run main.py --platform xhs --lt qrcode --type search运行后 Chrome 会弹出确认对话框,点"接受"。程序会等 60 秒你扫码登录。
5. 数据存储位置
data/xhs/ 目录下自动生成 CSV / JSON / JSONL 文件。data/xhs/notes/ 是帖子,data/xhs/comments/ 是评论。
6. 跑 WebUI 版(可选)
# 终端 1:API 服务
uv run uvicorn api.main:app --port 8080 --reload
# 终端 2:前端
cd webui
npm install
npm run dev打开 http://localhost:5173 就能用 WebUI。
🎯 实战场景:4 个最常用玩法
场景 1:市场调研 — 关键词趋势分析
调研"露营"在小红书的内容趋势:
uv run main.py --platform xhs --lt qrcode --type search \
--keywords "露营,露营装备,露营地" \
--get-comments # 抓评论跑完后:
- 1000+ 帖子标题 + 正文
- 5000+ 评论 + 二级评论
- 自动生成词云图(最常被提到的露营装备 / 营地 / 痛点)
场景 2:竞品监控 — 追踪对标账号
监控某竞品账号的内容更新:
# 在 config/base_config.py 配置创作者 ID
uv run main.py --platform dy --lt qrcode --type creator场景 3:舆情分析 — 监控品牌提及
# 微博 + 关键词搜索
uv run main.py --platform wb --lt qrcode --type search \
--keywords "你的品牌名+竞品名" \
--get-comments配合评论词云图,快速看到用户对品牌的情感倾向。
场景 4:学术研究 — 社交媒体数据采集
研究生 / 博士生做传播学 / 社科学研究:
- 抓 B 站某个话题下的所有视频评论
- 抓微博热搜话题下的用户讨论
- 抓知乎某个问题的所有回答
所有数据本地存储,符合学术伦理(公开数据 + 匿名化处理)。
🆚 和同类工具对比
| 工具 | 平台数 | 技术 | 签名 | 难度 | 维护 | 成本 |
|---|---|---|---|---|---|---|
| MediaCrawler | 7 | Playwright 自动化 | 0 逆向 | ⭐ 简单 | ✅ 浏览器自动更新 | 免费开源 |
| 八爪鱼(商业) | 多 | 浏览器模拟 | - | ⭐ 简单 | ✅ 平台升级 | 💰 几百到几千/月 |
| Apify(商业) | 多 | 云端 worker | - | ⭐⭐ | ✅ | 💰 按使用量 |
| scrapy + 逆向 | 1-2 | Python + JS 逆向 | 需重写 | ⭐⭐⭐⭐ | ❌ 平台升级就崩 | 免费但烧时间 |
| youtubedl 类工具 | 1 | API 解析 | 简单 | ⭐⭐ | ⚠️ | 免费 |
MediaCrawler vs 八爪鱼:八爪鱼是可视化拖拽爬虫,适合非技术人员;MediaCrawler 偏开发者,需要懂命令行,但覆盖平台更多 + 完全免费 + 数据本地化。
MediaCrawler vs 自己逆向:逆向派的技术深度更高,但维护成本是噩梦(每次平台升级都要重写);MediaCrawler 用浏览器自动化绕过这个痛点。
🧠 技术架构深度解析
我看了一下 MediaCrawler 的代码设计,有几个值得借鉴的地方:
CDP 模式 vs 传统 Playwright
默认是 CDP 模式(连接已有 Chrome),不是新建无头浏览器:
- 保留登录态(cookie / localStorage / 扩展)
- 降低风控检测(真人使用的浏览器 IP / Canvas 指纹稳定)
- 支持已有的 Chrome 扩展(抓包 / 调试工具都能用)
JS 表达式取签名
爬虫核心逻辑:
# 在浏览器上下文里执行 JS,拿签名参数
signature = page.evaluate('''() => {
return window._webmsxyw("参数"); // 调用原网站签名函数
}''')完全不需要逆向——因为签名是在浏览器里实时执行的,平台升级也只是换函数实现,调用方式不变。
模块化设计
每个平台一个独立文件:
media_platform/xhs/— 小红书爬虫media_platform/douyin/— 抖音爬虫media_platform/bilibili/— B 站爬虫media_platform/weibo/— 微博爬虫media_platform/tieba/— 贴吧爬虫media_platform/zhihu/— 知乎爬虫
加新平台 = 加一个目录 + 实现接口。对扩展友好。
Pro 版的 AI Agent Skill
这是 Pro 版最有想象力的功能——把爬虫能力封装成 AI Agent 的 Skill:
# OpenClaw / Claude Code / Cursor 都能调
from mediacrawler_skill import crawl_xhs
result = crawl_xhs(keyword="露营装备", max_count=100)
# 直接拿结构化数据,不用自己写爬虫让 AI Agent 自己决定要爬什么数据——这是把爬虫从"工具"升级为"AI 能力"。
📊 我自己用下来的感受
我用 MediaCrawler 跑了一次小红书"AI 工具"关键词调研,3 小时抓了 800+ 帖子 + 5000+ 评论。
体验好的部分:
- CDP 模式真的稳,没有触发任何风控(之前用别的爬虫 5 分钟就被封 IP)
- WebUI 比命令行直观,实时看进度很爽
- 词云图功能惊艳,直接出报告素材
- 多种数据格式导出,接 pandas 分析零成本
- 文档详细,踩坑说明(CDP 怎么开、登录态怎么用)都写了
踩坑提醒:
- 默认 CDP 模式必须用真实 Chrome(不是 Chromium),否则签名可能不对
- 抖音/知乎 必须装 Node.js 16+(小红书不需要)
- 单次爬取别贪多(一次 1000 条以内),容易被风控
- 用 IP 代理池 + 多账号 才能大规模爬(Pro 版功能)
- 遵守 robots 协议,别爬取隐私数据,别商业用途
- 平台升级可能临时失效,等作者更新即可
⚠️ 合规性提醒(必读)
1. 学习研究目的
MediaCrawler 明确仅供学习研究,禁止商业用途。商业用途请用官方 API(如小红书蒲公英 / 抖音星图)。
2. 遵守平台规则
- 不要绕过平台的反爬机制
- 不要大规模爬取(控制在合理范围)
- 不要爬取用户隐私数据
- 尊重 robots.txt
3. 遵守当地法律
- 《中华人民共和国网络安全法》
- 《数据安全法》
- 《个人信息保护法》
- 海外用户遵守当地数据保护法规(GDPR / CCPA 等)
4. 学术伦理
- 公开数据可爬,匿名化处理后再分析
- 涉及人类受试者研究需过 IRB
- 引用数据时注明数据来源
🎁 总结
MediaCrawler 解决了一个真实痛点:多平台自媒体数据采集。
它不是最快的爬虫,也不是最便宜的方案(毕竟免费),但综合体验最佳:
- 7 大平台统一接口(小红书/抖音/快手/B站/微博/贴吧/知乎)
- 0 JS 逆向(Playwright + 登录态复用)
- WebUI 可视化(不用记命令行)
- 7 种数据存储(CSV/JSON/Excel/SQLite/MySQL)
- 二级评论 + 词云图(分析直接出报告)
- Pro 版 AI Agent Skill(让 AI 自动爬数据)
适合人群:
- 🎯 新媒体运营 / 市场调研 / 竞品分析
- 🎓 研究生 / 博士生(社交媒体研究)
- 💻 开发者(学习爬虫架构 / Playwright 实战)
- 🤖 AI Agent 开发者(用 Pro 版 Skill 集成爬虫能力)
⚠️ 再次提醒:本项目仅供学习研究,请遵守相关法律法规和平台规则。
GitHub:github.com/NanmiCoder/MediaCrawler
文档:nanmicoder.github.io/MediaCrawler
Pro 版:github.com/MediaCrawlerPro
📝 写在最后
如果你对爬虫工具感兴趣,可以看看我之前写的 Strix:开源 AI 渗透测试神器(同属安全工具类,但合法用途)。如果你是做 AI 产品的,可以看看 Helicone AI Gateway(1 个 API 接 100+ 模型)。
觉得有用就点个赞、收藏、关注,你的支持是我继续挖好工具的动力 🚀