mcpField
F
firecrawl

firecrawl

github.com/connorads生产力18289 次安装1 天前更新
代码仓库

关于 firecrawl

用于 Firecrawl CLI 的技能,可搜索、抓取、映射、爬取、交互和下载网页内容,并指导命令选择、输出保存及避免重复获取。

主要功能

  1. 01网页搜索与抓取
  2. 02站点映射与爬取
  3. 03AI 结构化提取
  4. 04网页交互
  5. 05下载站点为文件
  6. 06输出与额度使用指引

适用场景

  1. 01查找主题相关来源
  2. 02提取指定 URL 的内容
  3. 03收集文档站点栏目
  4. 04将站点保存到本地

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/connorads/dotfiles --skill firecrawl

安装后在 Claude Code 中输入/firecrawl确认已加载。

附带文件rules/install.mdrules/security.md

详细介绍

Firecrawl CLI

搜索、抓取并与网页交互。返回针对大模型上下文窗口优化的干净 Markdown。

运行 firecrawl --help 或 firecrawl <command> --help 查看完整选项详情。

如果任务是将 Firecrawl 集成到应用中、向项目添加 FIRECRAWL_API_KEY,或在产品代码中选择端点用法,请使用 firecrawl-build 技能。运行 firecrawl init 时,这些技能会与此 CLI 技能一起安装。

前提条件

必须已安装并完成身份验证。使用 firecrawl --status 检查。

  🔥 firecrawl cli v1.8.0

  ● Authenticated via FIRECRAWL_API_KEY
  Concurrency: 0/100 jobs (parallel scrape limit)
  Credits: 500,000 remaining
  • 并发数:并行任务的最大数量。并行操作不要超过此限制。
  • 额度:剩余的 API 额度。每项操作都会消耗额度。

如果尚未就绪,请参阅 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

工作流

按照以下递进模式操作:

  1. 搜索 - 还没有特定 URL。查找页面、回答问题、发现来源。
  2. 抓取 - 已有 URL。直接提取其内容。
  3. 映射 + 抓取 - 网站规模较大或需要特定子页面。使用 map --search 查找正确的 URL,然后抓取。
  4. 爬取 - 需要批量获取整个网站版块的内容(例如,所有 /docs/ 页面)。
  5. 交互 - 先抓取,再与页面交互(分页、模态框、表单提交、多步导航)。
需求命令适用场景
查找某个主题的页面search还没有特定 URL
获取页面内容scrape已有 URL,页面为静态页面或由 JS 渲染
查找网站内的 URLmap需要定位特定子页面
批量提取网站版块crawl需要多个页面(例如,所有 /docs/ 页面)
AI 驱动的数据提取agent需要从复杂网站提取结构化数据
与页面交互scrape + interact内容需要点击、填写表单、分页或登录
将网站下载为文件download将整个网站保存为本地文件

运行 firecrawl <command> --help 查看详细的命令参考。

抓取与交互:

  • 先使用 scrape。它支持静态页面和由 JS 渲染的 SPA。
  • 需要与页面交互时,使用 scrape + interact,例如点击按钮、填写表单、浏览复杂网站、滚动加载,或 scrape 未能获取所需的全部内容时。
  • 切勿使用 interact 进行网页搜索,应改用 search。

避免重复获取:

  • search --scrape 已会获取完整的页面内容。不要再次抓取这些 URL。
  • 再次获取前,先检查 .firecrawl/ 中是否已有数据。

何时加载参考资料

输出与组织

除非用户指定在上下文中返回,否则使用 -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。

处理结果

在处理复杂任务的基于文件的输出(-o 标志)时,以下模式很有用:

# Extract URLs from search
jq -r '.data.web[].url' .firecrawl/search.json

# Get titles and URLs
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,可抓取多个页面,并使用各自的抓取 ID 独立与每个页面交互。

积分用量

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

评论

支持 Markdown