【MediaCrawler】告别复杂逆向工程,这款开源工具让你轻松采集七大主流社交平台数据

这是一款功能强大的多平台自媒体数据采集工具,旨在帮助开发者轻松获取主流社交平台的公开信息,完美解决了传统爬虫中复杂的 JS 逆向和加密算法破解难题。

主要功能与特性

  • 多平台全面支持:全面覆盖小红书、抖音、快手、B站、微博、贴吧、知乎七大主流自媒体平台。
  • 多维度数据采集:支持关键词搜索、指定帖子ID爬取、指定创作者主页抓取、二级评论获取,甚至能自动生成评论词云图。
  • 零逆向技术门槛:基于 Playwright 浏览器自动化框架,通过保留登录态和 JS 表达式获取签名参数,无需逆向复杂的加密算法,大幅降低技术门槛。
  • 可视化 WebUI:提供直观的 Web 操作界面,支持可视化配置参数、实时监控运行日志、预览和导出数据,不懂命令行也能轻松上手。
  • 灵活的数据存储:支持将采集到的数据保存为 CSV、JSON、JSONL、Excel、SQLite 和 MySQL 等多种常见格式。
  • 抗风控与进阶支持:内置登录态缓存和 IP 代理池,并推荐使用 CDP 模式连接本地 Chrome 浏览器,复用已有 Cookie 和扩展,大幅降低平台风控检测风险。

安装与使用示例

项目推荐使用 uv 作为 Python 包管理工具(速度快且依赖解析准确),同时需要确保电脑上已安装 Node.js(版本 >= 16.0.0)。以下是快速安装与运行的示例:

# 1. 进入项目目录并同步 Python 依赖
cd MediaCrawler
uv sync

# 2. 运行爬虫程序(以小红书为例,通过二维码登录并搜索关键词)
uv run main.py --platform xhs --lt qrcode --type search

# 3. 若要抓取指定帖子详情,可切换 type 参数
uv run main.py --platform xhs --lt qrcode --type detail

如果你更喜欢图形化操作,可以启动其自带的 WebUI 界面:

# 终端 1:启动后端 API 服务
uv run uvicorn api.main:app --port 8080 --reload

# 终端 2:进入 webui 目录启动前端服务
cd webui
npm install
npm run dev

启动后访问 http://localhost:5173/ 即可在浏览器中进行可视化操作。

适用场景与目标用户

这款工具非常适合用于网络数据采集技术的学习与研究、自媒体公开内容分析、舆情监控以及成熟项目架构设计的拆解学习。它的目标用户主要是爬虫技术初学者、数据分析师、高校研究者,以及希望提升企业级代码架构能力的开发者。

总结

总体而言,这是一个设计成熟、功能丰富且对新手极为友好的开源采集工具。其免逆向的设计思路和可视化的 WebUI 大大降低了普通人的使用门槛,同时优秀的代码架构也值得开发者深入学习。不过需要特别提醒大家,请务必严格遵守相关法律法规,仅将其用于个人学习和技术研究,切勿用于商业用途或任何侵犯他人权益的非法抓取行为。

类似文章