Scrapling
Scrapling 是一个 Python 网页抓取框架,支持快速 HTTP 请求、隐蔽浏览器、强大解析与并发爬取,可从单次请求扩展到全站抓取。
访问 D4Vinci/Scrapling项目简介
Scrapling 是一个 Python 网页抓取框架,将快速 HTTP 请求、隐蔽浏览器、强大解析与并发爬取整合在一个库中。它支持静态页面抓取、JavaScript 渲染、与网站交互、捕获网页背后的 API 调用,并提供可复用会话、代理轮换、自动重试、暂停与恢复以及内置数据导出。Scrapling 可从 Python、终端或通过 MCP 服务器与 Agent Skill 供 AI 代理使用。
核心功能
- Spiders 提供类似 Scrapy 的 API,支持并发抓取、多会话、暂停与恢复、流式输出、被阻止请求检测、AutoThrottle 以及可选的 Robots.txt 合规。Fetchers 支持快速 HTTP 请求、隐蔽浏览器自动化、JavaScript 渲染、持久会话、代理轮换、域名与广告拦截以及后台 API 捕获。解析支持 CSS 与 XPath 选择器、文本与正则搜索、自适应元素追踪、相似元素匹配以及干净的 Markdown 输出。内置导出器可生成 JSON、JSONL、CSV 与 XML 结果,并提供常见抓取模式的现成 spider
适用场景
- 抓取静态页面或渲染 JavaScript,从网站提取结构化数据。构建带会话、代理轮换、重试、暂停与恢复以及数据导出的并发爬虫。捕获网页背后的 API 响应以进行数据提取。让 AI 代理通过 MCP 服务器浏览和提取数据,或将网页内容准备为 Markdown 以用于 RAG 系统。
快速开始
- Scrapling 需要 Python 3.10 或更高版本。使用 pip install scrapling 安装基础包。若使用 fetchers 或 spiders,请安装可选依赖 pip install "scrapling[fetchers]",然后运行 scrapling install。其他可选组件包括 scrapling[ai]、scrapling[rag]、scrapling[shell] 和 scrapling[all]。
部署与要求
- 需要 Python 3.10 或更高版本。基础安装仅包含解析引擎;fetchers 和 spiders 需要可选依赖。浏览器 fetchers 需要运行 scrapling install 下载浏览器及系统与指纹相关依赖;HTTP 请求无需安装浏览器。Docker 镜像 pyd4vinci/scrapling 和 ghcr.io/d4vinci/scrapling:latest 包含全部额外组件与浏览器。
采用前须知
- 许可证:BSD-3-Clause。在使用、修改或分发项目前,请确认其具体条款。