网页不是给模型吃的。Crawl4AI 把它变成了。
互联网每天吐出亿万页垃圾包装:弹窗、导航、广告、骨架屏、无限滚动。
模型要的不是这些。模型要的是干净的 Markdown、可引用的层级结构、能毫无阻力喂进 RAG 的清晰语料。
大多数爬虫还停留在「把整页 HTML 硬扒下来」的石器时代。而 Crawl4AI 做的是下一件事:把混乱的网页,消化成 LLM 能直接大口吞下的高纯度食物。
它是什么
一款开源、专为 LLM 生态而生的网页爬虫与信息抽取引擎。
作者 unclecode 在 2023 年因为受够了“市面上的方案不仅收费、要 Token,而且抓取效果一团糟”,一怒之下利用几天假期手搓而成。如今它已经是 GitHub 上最受关注的爬虫项目之一:80,000+ Stars,8,000+ Forks。
一句话定位:
把网页洗成干净、可控、即插即用的 Markdown / JSON,直接交付给 RAG、AI Agent 与数据清洗流水线。
为什么它有这种统治力
- 输出天生面向模型:支持清洗 Markdown、Fit Markdown 降维、引用编号标记,内置 BM25 算法精准剔除噪点,绝不是粗暴的“全页 Dump”。
- 真正做到完全可控:原生支持浏览器指纹、会话保持、Proxy 轮换、Cookie、用户脚本、Hooks 钩子与高级反检测,不做黑盒 API。
- 会动脑子的智能爬取:支持自适应爬取(Adaptive Crawl),能动态感知站点结构,仅深入有价值的路径;支持深度爬取与断点续爬。
- 部署极其干脆:支持
pip install与 Docker;提供极简 CLI 命令(一行crwl URL -o markdown),没有任何强制绑定的云端钥匙或收费陷阱。 - 结构化抽取双轨制:既能用 CSS/XPath 快刀斩乱麻,又能挂接 LLM 抽取超复杂动态页面,分块(Chunking)、余弦计算与 JSON Schema 全链路通吃。
极简上手
三行搞定安装与环境诊断:
pip install -U crawl4ai
crawl4ai-setup
crawl4ai-doctor
抓取并清洗为结构化 Markdown 的最小代码:
import asyncio
from crawl4ai import AsyncWebCrawler
async def main():
async with AsyncWebCrawler() as crawler:
result = await crawler.arun(url="https://www.nbcnews.com/business")
print(result.markdown)
asyncio.run(main())
戏剧化一点说
旧世界:你把整座原始森林砍下来硬塞给模型,再求它从漫天枯枝落叶里找出果子。
新世界:Crawl4AI 在前端就把果子洗净、剥皮、去核、切片,端成一盘纯粹的营养素送到桌前。
闭源商业方案还在兜售高昂门票,而这个项目直接把围墙拆了——先用完全的开源证明可用性,再去构筑大规模的普惠平台。
它绝不是又一个 Scrapy 的套壳仿制品,它是 Agent 时代真正的网页消化系统。
👉 前往围观:github.com/unclecode/crawl4ai
那 8 万多个 Star 不是装饰,而是无数开发者已经在把清洗后的网页当成模型燃料在烧。