MediaCrawler:多平台社交媒体数据采集工具
MediaCrawler 是一款强大的开源爬虫工具,旨在高效抓取小红书、抖音、快手、B 站及微博等主流平台的视频、图片、评论、点赞和转发等多维度数据。
核心原理与技术实现
该工具通过 Playwright 构建浏览器桥接,在登录成功后完整保留上下文浏览器环境。其核心逻辑是直接执行 JS 表达式来获取加密参数,从而巧妙地绕过了对复杂加密算法的逆向工程,极大降低了开发与维护难度。由于涉及浏览器环境操作,使用者需具备一定的技术基础。
快速上手指南
1. 环境配置
首先创建并激活 Python 虚拟环境,以确保依赖隔离:
# 进入项目根目录
cd MediaCrawler
# 创建虚拟环境
python -m venv venv
# 激活虚拟环境 (macOS & Linux)
source venv/bin/activate
# 激活虚拟环境 (Windows)
venvScriptsactivate
2. 安装依赖与驱动
依次安装项目所需的依赖库及 Playwright 浏览器内核:
pip3 install -r requirements.txt
playwright install
3. 执行爬取任务
通过命令行参数指定平台和爬取模式。启动后请根据提示使用对应 APP 扫码登录。
# 模式 A:根据配置文件中的关键词搜索帖子及其评论
python main.py --platform xhs --lt qrcode --type search
# 模式 B:根据配置文件中的指定帖子 ID 列表抓取详情
python main.py --platform xhs --lt qrcode --type detail
# 查看更多平台支持及命令参数
python main.py --help
数据存储与导出
MediaCrawler 提供了灵活的数据保存方案,可根据分析需求选择:
- 关系型数据库: 支持 MySQL、PostgreSQL 等主流数据库。
- 本地文件: 支持导出为 CSV 或 JSON 格式(文件存放于
data/目录下)。
资源链接
GitHub 仓库: https://github.com/NanmiCoder/MediaCrawler
源码备份: 国内网盘下载
正文完
