Crawl4AI Skill:把网页抓成 LLM 友好 Markdown 的开源爬虫神器

Crawl4AI 是由独立开发者 Vadim Markovtsev(GitHub @unclecode)于 2023 年开源LLM 友好网页爬虫与数据提取工具,GitHub 星标数截至 2026 年 8 月已达 79,195 星、8,206 forks,是目前 GitHub 上最受欢迎的爬虫类开源项目。其核心定位是”把网页转换为 LLM 可直接消费的干净 Markdown”,解决传统爬虫输出 HTML 噪声过多、商业 API 按量计费有锁定风险的根本痛点。项目采用 Apache 2.0 许可证(核心能力完全免费),同时提供商业化 Cloud API 服务,PyPI 累计下载量超过 1,850 万次,近 30 天仍有 164 万次下载,生态活跃度极高。

功能与原则

Crawl4AI 提供”抓取 → 清洗 → 提取”三阶段完整能力:(Browser 层)基于 Playwright + Chromium/Firefox/WebKit 三引擎,内置异步浏览器池、Session 持久化、代理支持、Cookie 管理和用户脚本注入能力,支持 JavaScript 渲染与各类反爬场景;(Markdown Generation)输出结构化 Markdown,内置 BM25 过滤、Cosine Similarity 语义去噪、CSS 选择器精确提取和 Fit Markdown 启发式清洗,自动去除导航栏、广告等干扰内容;(LLM Extraction)支持接入任意 LLM(OpenAI、Anthropic、Gemini、本地 Ollama),按 JSON Schema 或 Pydantic 模型定义提取字段,实现结构化数据抽取。

认可度

GitHub(截至 2026-08-23):79,195 星、8,206 forks,稳居全球爬虫类开源项目第一名。PyPI 累计下载 1,850 万次,近 30 天下载 164 万次(pepy.tech 实时数据)。2025 年至今持续占据 GitHub Trending 榜单,多次被 GitHub 官方推荐。被 5 万+ 开发者社区采用,Discord 活跃,v0.9.x 版本仍在高频迭代(2026 年 1 月至今已发布多个安全与功能版本)。

链接

GitHub:https://github.com/unclecode/crawl4ai

官方文档:https://docs.crawl4ai.com

原作者

项目创始人兼主要维护者 Vadim Markovtsev(GitHub @unclecode),一位在 NLP 方向有学术背景的独立开发者。开发动机源于 2023 年他本人需要将网页转为 Markdown 喂给 LLM 时,发现市面方案要么需要注册/付费/申请 API Key,要么效果不达预期,于是”Turbo 愤怒模式”几天内完成初始版本并开源,此后持续维护至今。

介绍

Crawl4AI 的诞生直击一个高频痛点:LLM 应用需要大量网页数据,但传统爬虫(Scrapy、BeautifulSoup)输出的是 HTML 或带大量噪声的原始文本,直接喂给 LLM 效果差;而商业 API(Firecrawl、Diffbot、Browserless)按调用量收费、有 API Key 锁定、不适合大规模数据采集。开发者 Vadim 在研究生阶段专攻 NLP,深知数据清洗对下游任务的影响,因此从一开始就把”LLM 友好输出”作为核心设计目标,而非后期适配。

v0.9.x 最新版本引入了多个重要特性:深度抓取(Deep Crawl)支持 BFS/DFS/best-first 多种策略,crash recovery 机制确保长时任务可从中断点恢复,prefetch 模式实现 5-10 倍的 URL 发现加速,Docker API Server 在 v0.9.0 升级为默认开启认证的安全版本。最新 v0.9.3 为安全补丁,修复了 PDF 处理路径的 5 个安全漏洞(任意文件写入、SSRF、DoS、XSS),同步包含 33 个 bug 修复,展示了活跃的安全响应能力。

特点

  • LLM 友好输出:Markdown 格式保留标题层级、表格、代码块和引用提示,上下文干净可直接喂给 LLM,无需二次清洗
  • 零门槛本地运行:无需 API Key、无需注册账号,pip 安装 + Docker 即可运行,数据完全在本地基础设施上处理
  • 深度抓取与容错:BFS/DFS/best-first 多策略深度抓取,crash recovery + resume_state 支持长时间任务中断恢复,prefetch 模式 5-10x 加速 URL 发现
  • 多引擎浏览器控制:Playwright + Chromium/Firefox/WebKit 三引擎,支持 JavaScript 渲染、反爬绕过、Session 持久化、代理和 Cookie 管理
  • 结构化数据提取:支持 CSS/XPath Schema、Pydantic JSON Schema(LLM 驱动)和大表格自动分块提取三种路径,灵活适配不同提取需求
  • 安全持续迭代:v0.9.x 系列保持高频安全更新,2026 年已修复多个 RCE/SSRF/XSS 漏洞,安全性维护响应迅速

使用方法

安装:

pip install -U crawl4ai
crawl4ai-setup
crawl4ai-doctor
# 如遇浏览器问题,手动安装
python -m playwright install --with-deps chromium

Python API 抓取单页:

import asyncio
from crawl4ai import *

async def main():
    async with AsyncWebCrawler() as crawler:
        result = await crawler.arun(url="https://www.nbcnews.com/business")
        print(result.markdown)

asyncio.run(main())

命令行深度抓取:

# 基础抓取
crwl https://www.nbcnews.com/business -o markdown

# 深度抓取(最多 10 页)
crwl https://docs.crawl4ai.com --deep-crawl bfs --max-pages 10

# LLM 提取结构化数据
crwl https://www.example.com/products -q "Extract all product prices"

使用场景与人群

适用场景:

  • RAG 数据管道构建(从网站批量抓取干净文本作为向量数据库来源)
  • AI 研究数据采集(大规模网页抓取后喂给 LLM 做分析、摘要、问答)
  • 竞品监控与价格追踪(结构化提取商品价格、库存、评论等字段)
  • AI Agent 网页信息获取(作为 Agent 的工具之一,实时抓取最新网页内容)

目标用户:

  • LLM 应用开发者(RAG pipeline、数据集构建)
  • AI 研究人员(数据采集与预处理)
  • 需要大规模网页数据但不想依赖商业 API 的工程师

输入与输出案例

案例一:RAG 数据管道

  • 输入:目标网站列表(100 个技术博客),需要提取文章标题、正文、发布日期
  • 过程AsyncWebCrawler 批量抓取,Fit Markdown 模式自动过滤侧边栏/导航/广告,输出干净 Markdown
  • 输出:可直接用于向量化的干净文本块,每篇结构为 # 标题nn日期nn正文内容,无 HTML 标签或导航噪声

案例二:结构化价格提取

  • 输入:电商产品列表页 URL + 提取目标 JSON Schema(产品名、价格、评分、库存状态)
  • 过程crwl <url> -q "Extract product name, price, rating, stock status as JSON" 调用 LLM 提取
  • 输出:结构化 JSON 数组 [{name: "...", price: 99.9, rating: 4.5, in_stock: true}, ...],可直接写入数据库或做价格对比分析

GitHub: https://github.com/unclecode/crawl4ai

评论区

0 条评论

登录后可评论。

Skill超级捕获手 11 阅读