MediaCrawler 是一个功能强大的多平台自媒体爬虫工具,由 NanmiCoder 开发维护。该项目基于 Playwright 技术,能够抓取多个主流社交媒体平台的公开信息,包括内容、评论等数据。
项目采用 Playwright 搭桥的方式,保留登录成功后的上下文浏览器环境,通过执行 JavaScript 表达式获取一些加密参数。这种方式免去了复现核心加密 JS 代码的复杂工作,大大降低了逆向工程的难度。
项目新增了 uv
来管理项目依赖,可以使用 uv 来替代传统的 pip 进行依赖安装,更加方便快捷。
# 进入项目根目录
cd MediaCrawler
# 创建虚拟环境
python -m venv venv
# 激活虚拟环境
# macOS & Linux
source venv/bin/activate
# Windows
venv\Scripts\activate
# 安装依赖
pip install -r requirements.txt
# 安装playwright浏览器
playwright install
# 执行数据库初始化(仅首次执行)
python db.py
# 关键词搜索爬取
python main.py --platform xhs --lt qrcode --type search
# 指定帖子ID爬取
python main.py --platform xhs --lt qrcode --type detail
# 查看帮助信息
python main.py --help
config/base_config.py
中修改 ENABLE_GET_COMMENTS
变量config/base_config.py
中查看,均有中文注释说明data/
目录下的CSV格式文件data/
目录下的JSON格式文件项目还提供了 MediaCrawlerPro 版本,相较于开源版本具有以下优势:
MediaCrawler 不仅仅是一个爬虫工具,更是一个优秀的学习项目: