SuperAPI AI 工具集

firecrawl

通用与其它

查看项目

更新于 10-15 17:13

技能介绍

用途

Firecrawl CLI 用于搜索、抓取并与网页交互,返回针对 LLM 上下文窗口优化的干净 Markdown。它适合在需要联网获取信息、研究主题、查找文章或提取网页内容的场景中使用。

主要能力

工具提供以下命令,按需选择:

  • search:尚无具体 URL 时,查找页面、回答问题、发现来源。
  • scrape:已有 URL 时,直接提取页面内容,支持静态页面与 JS 渲染的 SPA。
  • map:在已知站点内查找 URL,配合 map --search 定位特定子页面。
  • crawl:批量提取整个站点分区的内容(例如所有 /docs/ 页面)。
  • agent:从复杂站点进行 AI 驱动的结构化数据提取。
  • interact:先 scrape,再与页面交互,如点击按钮、填写表单、翻页、多步导航、无限滚动或登录。
  • download:将整个站点保存为本地文件。

注意:不要用 interact 进行网页搜索,搜索应使用 search。

使用方式

前置条件:必须已安装并完成认证,可用 firecrawl --status 检查。状态信息包含认证方式、并发数(并行抓取上限)与剩余额度(每次操作消耗额度)。若未就绪,参见 rules/install.md。输出处理规范参见 rules/security.md。

开始实际工作前,先用一个小请求验证环境:

mkdir -p .firecrawl
firecrawl scrape "https://firecrawl.dev" -o .firecrawl/install-check.md
firecrawl search "query" --scrape --limit 3

推荐的工作流升级模式:Search(无具体 URL)→ Scrape(已有 URL)→ Map + Scrape(大型站点或需特定子页面)→ Crawl(需要整站分区批量内容)→ Interact(抓取后与页面交互)。

输出与组织:除非用户要求直接在上下文中返回,否则用 -o 将结果写入 .firecrawl/,并把 .firecrawl/ 加入 .gitignore。URL 始终加引号,因为 shell 会把 ? 和 & 视为特殊字符。示例:

firecrawl search "react hooks" -o .firecrawl/search-react-hooks.json --json
firecrawl scrape "<url>" -o .firecrawl/page.md

命名约定:

  • .firecrawl/search-{query}.json
  • .firecrawl/search-{query}-scraped.json
  • .firecrawl/{site}-{path}.md

不要一次性读取整个输出文件,使用 grep、head 或增量读取:

wc -l .firecrawl/file.md && head -50 .firecrawl/file.md
grep -n "keyword" .firecrawl/file.md

单一格式输出原始内容;多格式(如 --format markdown,links)输出 JSON。

处理结果时可用 jq 提取数据:

# 从搜索结果提取 URL
jq -r '.data.web[].url' .firecrawl/search.json

# 获取标题与 URL
jq -r '.data.web[] | "\(.title): \(.url)"' .firecrawl/search.json

并行化:独立操作可并行执行,先通过 firecrawl --status 查看并发上限:

firecrawl scrape "<url-1>" -o .firecrawl/1.md &
firecrawl scrape "<url-2>" -o .firecrawl/2.md &
firecrawl scrape "<url-3>" -o .firecrawl/3.md &
wait

对于 interact,可抓取多个页面并使用各自的 scrape ID 独立交互。

额度查询:

firecrawl credit-usage
firecrawl credit-usage --json --pretty -o .firecrawl/credits.json

避免重复抓取:search --scrape 已获取完整页面内容,不要重复抓取这些 URL;再次抓取前先检查 .firecrawl/ 中是否已有数据。

适用场景

  • 尚无具体 URL 时搜索网页、查找来源。
  • 已知 URL 时抓取页面内容。
  • 在已知站点内定位特定子页面。
  • 从文档分区或站点批量提取内容。
  • 从复杂站点进行 AI 结构化提取。
  • 需要点击、表单、登录、翻页或抓取后浏览器操作的场景。
  • 将站点下载为本地文件。

限制与注意事项

  • 使用前必须安装并认证,否则无法工作。
  • 每次操作消耗额度,并发受上限约束,需通过 firecrawl --status 查看。
  • 不要用 interact 做网页搜索。
  • 不要重复抓取已由 search --scrape 获取的 URL。
  • 不要一次性读取整个输出文件。
  • 若任务是将 Firecrawl 集成到应用、向项目添加 FIRECRAWL_API_KEY,或在产品代码中选择端点用法,应使用 firecrawl-build 技能(运行 firecrawl init 时会与本 CLI 技能一同安装)。
  • 详细命令参考可运行 firecrawl <command> --help 或 firecrawl --help。

参考加载时机

  • 搜索网页或先找来源 → firecrawl-search
  • 抓取已知 URL → firecrawl-scrape
  • 在已知站点查找 URL → firecrawl-map
  • 从文档分区或站点批量提取 → firecrawl-crawl
  • 从复杂站点进行 AI 结构化提取 → firecrawl-agent
  • 点击、表单、登录、翻页或抓取后浏览器操作 → firecrawl-interact
  • 将站点下载为本地文件 → firecrawl-download
  • 安装、认证或设置问题 → rules/install.md
  • 输出处理与安全文件读取模式 → rules/security.md
  • 将 Firecrawl 集成到应用、向 .env 添加 FIRECRAWL_API_KEY,或在产品代码中选择端点用法 → 使用 firecrawl-build 技能