用途
firecrawl-scrape 用于从一个或多个指定 URL 提取干净、面向大语言模型优化的 Markdown 内容。当用户提供了具体 URL 并希望获取其内容时使用。它同时适用于静态页面和由 JavaScript 渲染的单页应用(SPA)。
在官方给出的工作流升级模式中,它属于第二步:search → scrape → map → crawl → interact。也就是说,先用 search 找到页面,再用 scrape 抓取内容;当 scrape 无法获取所需内容时,才升级到 interact 进行点击、填表等操作。
主要能力
- 抓取一个或多个 URL,返回干净的 Markdown。
- 多个 URL 并发抓取。
- 支持多种输出格式:markdown、html、rawHtml、links、screenshot、json。
- 可通过 --only-main-content 仅保留正文,去除导航、页脚、侧边栏。
- 可通过 --wait-for 等待 JS 渲染后再抓取。
- 可通过 --include-tags、--exclude-tags 按 HTML 标签过滤内容。
- 可通过 --query 针对页面内容提问(消耗 5 个积分)。
- 可指定输出文件路径,也可在输出中包含 HTTP 响应头。
使用方式
基本 Markdown 提取:
firecrawl scrape "<url>" -o .firecrawl/page.md
仅保留正文,去除导航和页脚:
firecrawl scrape "<url>" --only-main-content -o .firecrawl/page.md
等待 JS 渲染后再抓取:
firecrawl scrape "<url>" --wait-for 3000 -o .firecrawl/page.md
抓取多个 URL(每个保存到 .firecrawl/ 目录):
firecrawl scrape https://example.com https://example.com/blog https://example.com/docs
同时获取 Markdown 和链接:
firecrawl scrape "<url>" --format markdown,links -o .firecrawl/page.json
针对页面提问:
firecrawl scrape "https://example.com/pricing" --query "What is the enterprise plan price?"
选项
| 选项 | 说明 |
|---|---|
-f, --format <formats> |
输出格式:markdown、html、rawHtml、links、screenshot、json |
-Q, --query <prompt> |
针对页面内容提问(5 个积分) |
-H |
在输出中包含 HTTP 响应头 |
--only-main-content |
去除导航、页脚、侧边栏,仅保留正文 |
--wait-for <ms> |
抓取前等待 JS 渲染的毫秒数 |
--include-tags <tags> |
仅包含这些 HTML 标签 |
--exclude-tags <tags> |
排除这些 HTML 标签 |
-o, --output <path> |
输出文件路径 |
适用场景与建议
- 已有明确 URL,需要获取页面内容。
- 页面为静态或 JS 渲染的 SPA。
- 优先使用普通 scrape 而非 --query:先把内容抓到文件,再用 grep、head 或直接阅读 Markdown,自行搜索和推理完整内容。仅当希望不保存页面、只获取单个针对性答案时,才使用 --query(额外消耗 5 个积分)。
- 先尝试 scrape 再考虑 interact:scrape 已能处理静态页面和 JS 渲染的 SPA,只有在需要交互(点击、填表、翻页)时才升级到 interact。
- 多个 URL 会并发抓取,可通过
firecrawl --status查看并发上限。 - 单一格式输出原始内容;多种格式(如
--format markdown,links)输出 JSON。 - URL 始终加引号,因为 shell 会把
?和&视为特殊字符。 - 命名约定:
.firecrawl/{site}-{path}.md。
相关技能
- firecrawl-search:在没有 URL 时查找页面。
- firecrawl-interact:当 scrape 无法获取内容时,使用 interact 点击、填表等。
- firecrawl-download:将整个站点批量下载到本地文件。
限制
除上述说明外,关于调用限制、错误处理、支持的浏览器渲染细节等,暂未提供。