源码简介
LittleCrawler 是一款基于 Python 3.11+ 异步架构的开源爬虫框架,专为小红书 (xhs)、闲鱼 (xhy)、知乎 (zhihu) 等社交媒体平台设计。它内置 Playwright 驱动真实浏览器,配合智能登录插件和可插拔存储接口,让开发者只需修改几行配置即可完成从数据采集到落地的全过程,被誉为爬虫界的“瑞士军刀”。
相比传统的零散脚本,LittleCrawler 将登录、反爬、存储、任务调度等共性需求抽象为标准化模块,单进程即可并发处理 50+ 浏览器上下文,内存占用稳定在 300MB 以内,真正实现了“一次抽象,随处运行”的维护理念。
核心特性
1. 异步高性能引擎
2. 三层反检测体系
- 浏览器指纹随机化:自动添加 User-Agent、WebGL、Canvas 噪声,每 30 分钟重启浏览器实例
- CDP 直连模式:通过 Chrome DevTools Protocol 直接连接本地浏览器,彻底绕过 WebDriver 特征检测
- 代理池支持:内置代理接口,可接入免费/付费代理池,随机切换出口 IP
3. 存储层“热插拔”
- 所有存储实现均继承
BaseStorage抽象类,新增存储只需实现connect()、insert()、close()三个方法 - 支持六种存储后端:CSV、JSON、SQLite、MySQL、MongoDB、Excel,切换存储只需修改一行配置
SAVE_DATA_OPTION
4. 可视化 Web 操作台
- 前端基于 Next.js + NextUI,后端使用 FastAPI 提供 REST API
- 三大核心面板:登录管理(二维码/Cookie)、任务配置(平台/类型/关键词)、数据下载(实时日志 + 文件导出)
- 支持纯 API 模式运行,方便与现有系统集成
快速开始
环境准备
bash
# 克隆仓库 git clone https://github.com/pbeenig/LittleCrawler.git cd LittleCrawler # 安装依赖(推荐使用 uv,比 pip 快 3~5 倍) uv sync # 或使用 pip pip install -r requirements.txt # 安装 Playwright 浏览器 playwright install chromium
最小配置示例
编辑 config/base_config.py,仅需四行配置即可运行:
python
PLATFORM = "xhs" # 平台:xhs(小红书)/xhy(闲鱼)/zhihu(知乎) KEYWORDS = "露营,咖啡" # 搜索关键词,英文逗号分隔 CRAWLER_TYPE = "search" # 爬取类型:search/detail/creator SAVE_DATA_OPTION = "json" # 存储方式:json/csv/sqlite/excel/db
启动命令
bash
# 命令行模式 python main.py # Web 界面模式 cd web && npm run build uv run uvicorn api.main:app --port 8080 --reload # 访问 http://127.0.0.1:8080
💡 实战场景示例
项目结构速览
connect()3
使用须知
- 法律合规:本工具仅供学习研究使用,请遵守目标网站的
connect()4 及相关法律法规,不得用于非法数据采集。 - 账号安全:建议使用小号进行登录操作,避免主账号因异常行为被限制。
- 验证码处理:遇到滑块验证码时,框架会自动截图保存至
connect()5 目录,手动完成后将 Cookie 填入 Web 后台即可继续运行。 - 反爬策略:知乎反爬较严,推荐使用 Cookie 登录并启用指数退避策略(内置支持)。











暂无评论内容