MediaCrawler 多平台自媒体数据采集爬虫

MediaCrawler 是什么

MediaCrawler 是 GitHub 上斩获 56K+ Star 的开源多平台自媒体数据采集工具,基于 Python + Playwright 实现,支持小红书、抖音、快手、B站、微博、百度贴吧、知乎共 7 大平台的关键词搜索、笔记/视频/帖子抓取、评论采集(含二级评论)与博主主页数据。对做自媒体运营、舆情分析、竞品研究的同学来说,相当于一个开箱即用的公开数据采集底座。

核心功能

  • 7 大平台全覆盖:小红书、抖音、快手、B站、微博、贴吧、知乎,能力一致
  • 关键词搜索 + 指定 ID 抓取:既能按词搜,也能按帖子/视频 ID 精准拉
  • 二级评论采集:主楼和楼中楼评论都能爬
  • 博主主页数据:Creator Home 模式抓作者维度信息
  • 登录态缓存 + IP 代理池:扫码登录后缓存 Cookie,支持代理轮换防封
  • 评论词云:自带评论词频统计,选题和舆情分析直接能用

技术原理:为什么不用逆向

传统爬虫要逆向各平台的签名参数(如 X-s、签名算法),门槛高且规则一变就失效。MediaCrawler 的做法是:用 Playwright 启动真实浏览器登录并保存登录态,在保留登录态的浏览器上下文里通过 JS 表达式直接获取签名参数。无需破解加密算法,技术门槛大幅降低,平台风控变动时也相对稳定。

怎么用:快速上手

  1. 准备环境:装好 uv(推荐包管理器)和 Node.js ≥ 16Chrome ≥ 144
  2. 拉代码并装依赖:git clonecd MediaCrawler && uv sync
  3. 改配置:在 config/base_config.py 打开 ENABLE_GET_COMMENTS 等开关,填好关键词
  4. 推荐 Chrome CDP 模式:浏览器开启 chrome://inspect 允许远程调试,连本地 9222 端口,免装浏览器驱动
  5. 开爬:uv run main.py --platform xhs --lt qrcode --type search,手机扫二维码登录即可

数据存哪

支持 CSV、JSON、JSONL、Excel、SQLite、MySQL 多种格式,无论本地分析还是直接入库都方便。

可视化 WebUI

不想敲命令可以用自带 WebUI(FastAPI + Vite):可视化配置参数、实时看日志和状态、数据预览与导出,对不熟悉代码的人也友好。

适合谁

  • 自媒体 / 运营:批量采集竞品和爆款评论,做选题与舆情分析
  • 数据分析 / 研究人员:拿多平台公开数据做研究
  • 开发者:基于源码二次开发,接进自己的流水线

注意事项

  • 采集的是各平台公开数据,请遵守平台 ToS 与《个人信息保护法》等法规,仅用于合法研究与分析,勿商用滥用
  • 需要一定 Python / 命令行基础,新手建议先从 WebUI 入手
  • 登录态方式依赖平台风控,高频采集建议配 IP 代理池
  • 另有付费增强版 MediaCrawlerPro(去 Playwright 依赖、断点续传、多账号等),按需选择

官方入口

开源地址:github.com/NanmiCoder/MediaCrawler

官方文档:nanmicoder.github.io/MediaCrawler

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。