SuperAPI AI 工具集

crawl4ai

数据与分析

查看项目

更新于 10-16 02:03

技能介绍

用途

crawl4ai 是一个高性能网页爬虫工具,具备智能分块能力。它用于爬取网页、将内容提取为 Markdown,并通过基于 LLM 的骨架规划(skeleton planning)进行内容组织。适用于网页抓取、Markdown 内容提取以及带智能分块与骨架规划的网站数据采集。

主要能力

核心命令为 crawl_url(别名 webCrawl),用于爬取网页,采用原生工作流执行与基于 LLM 的智能分块。

参数说明:

  • url(str,必填):目标爬取 URL。
  • action(str,默认 "smart"):操作模式,可选 "smart"、"skeleton"、"crawl"。
  • fit_markdown(bool,默认 true):清理并简化 Markdown 输出。
  • max_depth(int,默认 0):最大爬取深度(0 表示单页)。
  • return_skeleton(bool,默认 false):同时返回文档骨架(目录)。
  • chunk_indices(list[int]):要提取的章节索引列表。

操作模式:

  • smart(默认):LLM 生成分块计划,然后提取相关章节。适用于需要特定信息的大型文档。
  • skeleton:提取轻量级目录(TOC),不返回完整内容。适用于快速概览、决定阅读哪些部分。
  • crawl:返回完整 Markdown 内容。适用于小型页面、需要完整内容的场景。

运行时传输策略:

  • max_depth = 0:使用 HTTP 策略(无浏览器冷启动),延迟更低。
  • max_depth > 0:使用浏览器深度爬取策略(BFS),用于多页遍历。
  • file://... 且 max_depth = 0:使用本地快速路径(不启动 crawl4ai 运行时引导),用于确定性的本地夹具/本地笔记基准测试。
  • 持久化 worker 模式会在请求之间复用 HTTP 爬虫实例,以减少重复初始化开销。

使用方式

示例(保留原始命令格式):

  • 智能爬取(默认,带 LLM 分块):tool: crawl4ai.CrawlUrl with {"url": "https://example.com"}
  • 仅骨架(快速获取目录):tool: crawl4ai.CrawlUrl with {"url": "https://example.com", "action": "skeleton"}
  • 完整内容爬取:tool: crawl4ai.CrawlUrl with {"url": "https://example.com", "action": "crawl"}
  • 提取特定章节:tool: crawl4ai.CrawlUrl with {"url": "https://example.com", "chunk_indices": [0, 1, 2]}
  • 深度爬取(跟随链接至深度 N):tool: crawl4ai.CrawlUrl with {"url": "https://example.com", "max_depth": 2}
  • 获取骨架及完整内容:tool: crawl4ai.CrawlUrl with {"url": "https://example.com", "return_skeleton": true}

核心概念:

  • 骨架规划(Skeleton Planning):LLM 查看目录(约 500 tokens)而非完整内容(约 10k+ tokens)。参考 smart-chunking.md。
  • 分块提取(Chunk Extraction):感知 token 的章节提取。参考 chunking.md。
  • 深度爬取(Deep Crawling):使用 BFS 策略的多页爬取。参考 deep-crawl.md。

最佳实践:

  • 对大型文档先使用 skeleton 模式了解结构。
  • 使用 chunk_indices 提取特定章节,而非完整内容。
  • 谨慎设置 max_depth > 0,限制爬取页面数以防失控爬取。
  • 保持 fit_markdown=true 以获得更干净输出,设为 false 获取原始内容。

高级用法:

  • 通过多次独立调用批量处理多个 URL。
  • 与知识工具结合用于 RAG 流水线。
  • 使用 skeleton + LLM 自动生成分块计划以进行自定义提取。

适用场景

  • 需要从大型文档中提取特定信息时使用 smart 模式。
  • 需要快速了解文档结构、决定阅读范围时使用 skeleton 模式。
  • 需要完整页面内容的小型页面使用 crawl 模式。
  • 需要多页遍历时设置 max_depth > 0 进行深度爬取。
  • 构建 RAG 流水线时与知识工具结合使用。

限制

关于收费、价格、平台支持范围、具体性能指标等信息,资料中暂未提供。