项目简介
MediaCrawler 是一个功能强大的多平台自媒体数据采集工具,基于 Playwright 浏览器自动化框架,无需逆向复杂的 JS 加密算法,即可轻松抓取小红书、抖音、快手、B站、微博、贴吧、知乎等 7 大主流平台的公开信息。
支持关键词搜索、指定帖子爬取、二级评论抓取、创作者主页数据、登录态缓存、IP代理池等功能,还能自动生成评论词云图,是自媒体运营和数据分析的利器。
💡
GitHub 地址:
https://github.com/NanmiCoder/MediaCrawler
核心亮点
支持平台与功能一览
| 平台 | 关键词搜索 | 指定帖子 | 二级评论 | 创作者主页 | IP代理 |
|---|---|---|---|---|---|
| 小红书 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 抖音 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 快手 | ✅ | ✅ | ✅ | ✅ | ✅ |
| B站 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 微博 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 贴吧 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 知乎 | ✅ | ✅ | ✅ | ✅ | ✅ |
环境要求
- Python:3.11(推荐)
- Node.js:>= 16.0.0(抖音和知乎爬取需要)
- uv:推荐使用 uv 包管理工具(速度快、依赖解析准确)
- 操作系统:Windows / macOS / Linux 均支持
⚠️ 如果使用原生 pip 安装,建议 Python 版本为 3.11,其他版本可能存在依赖兼容性问题。
安装与使用
git clone https://github.com/NanmiCoder/MediaCrawler.gitcd MediaCrawler
# 使用 uv(推荐)uv sync# 安装浏览器驱动uv run playwright install
如果使用 pip:
python -m venv venvvenv\Scripts\activate # Windowspip install -r requirements.txtplaywright install
编辑 config/base_config.py,设置搜索关键词、爬取类型、是否开启评论等选项(文件中有详细中文注释)。
# 关键词搜索小红书笔记uv run main.py --platform xhs --lt qrcode --type search# 指定帖子ID爬取uv run main.py --platform xhs --lt qrcode --type detail# 爬取抖音uv run main.py --platform dy --lt qrcode --type search# 查看所有选项uv run main.py --help
✅ 运行后会弹出浏览器,使用对应平台APP扫码登录即可,登录态会自动缓存。
# 启动 Web 界面uv run uvicorn api.main:app --port 8080 --reload
访问 http://localhost:8080 即可使用可视化界面配置爬虫参数、实时查看运行状态和数据预览。
数据存储
MediaCrawler 支持多种数据存储方式:
- CSV:最简单的表格格式,方便 Excel 打开
- JSON / JSONL:结构化数据,方便程序处理
- Excel:直接生成 .xlsx 文件
- SQLite:本地数据库,无需额外安装
- MySQL:适合大规模数据存储
常见问题
Q: 支持哪些登录方式?
支持二维码扫码登录(推荐)和手机号验证码登录。扫码登录最稳定,登录态会自动缓存,下次运行无需重复登录。
Q: 爬取数据会被封号吗?
项目仅用于学习和研究目的,支持 IP 代理池分散请求。建议合理控制爬取频率,遵守平台使用条款。
Q: 如何爬取评论?
在 config/base_config.py 中将 ENABLE_GET_COMMENTS 设置为 True 即可开启评论爬取,支持二级评论。
Q: 支持 Linux 服务器部署吗?
支持。Linux 环境下使用 Playwright 的 headless 模式即可运行,无需图形界面。
本站收集的资源仅供内部学习、研究软件设计思想与原理使用。学习研究后请自觉删除,请勿添加内容资料中的联系方式,谨防受骗;请勿传播。因未及时删除或用于其他用途所造成的任何后果,均由使用者自行承担。感谢理解与配合!
若您认为「cmzhiku.com」发布的内容侵犯了您的合法权益,请联系站长邮箱:ksxwdyx@qq.com。我们将在核实后及时进行删除处理。
本站资源大多存储于云盘。如发现下载链接失效或资源异常,请及时联系我们,我们会第一时间核实并更新。



















