firecrawl agent
AI驱动的自主提取。代理会导航网站并提取结构化数据(耗时2-5分钟)。
在开始对结构化记录或列表进行自主提取之前,请先使用 firecrawl search alexandria '<你所需的数据>' 检查是否有现成的工作流或数据提供者。使用 firecrawl list <provider> <capability> --pretty 检查匹配的合约,如果它能覆盖该任务,则使用 firecrawl scrape --alexandria <provider>/<capability> --options '<input JSON>' 执行。请使用合约中确切提供者、功能和输入字段。当没有合适的工具或任务需要自主导航时,继续使用 Agent。
快速开始
# 提取结构化数据
firecrawl agent "提取所有定价层级" --wait --json -o .firecrawl/pricing.json
# 使用JSON Schema进行结构化输出
firecrawl agent "提取产品" --schema '{"type":"object","properties":{"name":{"type":"string"},"price":{"type":"number"}}}' --wait --json -o .firecrawl/products.json
# 聚焦特定页面
firecrawl agent "获取功能列表" --urls "<url>" --wait --json -o .firecrawl/features.json
运行 firecrawl agent --help 查看完整选项列表。
完成条件: 当输出文件包含满足请求的有效JSON时,或当任务ID被有意返回以供后续轮询时。
Alexandria 提供者
只有当执行以 Alexandria 标志开始时,才会使用连接的 Alexandria 数据提供者:--alexandria、--toolkits <slugs>(最多5个)、--max-calls <n>、--require-approval 或 --on-terms-required skip|ask。在同一线程上的后续操作将保持这些设置。
firecrawl agent "查找 <公司> 的销售主管" --toolkits apollo,crunchbase --wait --json -o .firecrawl/contacts.json
使用 --require-approval(需要 --mode chat)时,执行可能会以 pendingApproval 状态结束,而不是直接进行付费调用。询问用户后,在同一线程上使用 firecrawl agent "<后续提示>" --thread <threadId> --mode chat --approve <approvalId>(或 --decline <approvalId>)回答。terms 类型的批准仅在组织管理员在 Firecrawl 控制面板中接受提供者条款后才会继续;请向用户提供 https://www.firecrawl.dev/app/settings?tab=data-sources,如果用户想先查看条款,可以使用 firecrawl alexandria terms show <provider>。批准并不表示接受条款。
任务ID
省略 --wait 会返回一个任务ID。UUID 位置参数会被自动检测为状态检查:
# 检查一次(相当于添加 --status)
firecrawl agent "<job-id>"
# 等待现有任务,每10秒轮询一次,最长5分钟
firecrawl agent "<job-id>" --wait --poll-interval 10 --timeout 300
# 取消正在进行中的任务
firecrawl agent "<job-id>" --cancel
提示
- 使用
--wait获取内联结果;仅在希望稍后轮询任务ID时省略它(请参见任务ID)。 - 使用
--schema获取可预测、结构化的输出;否则代理将返回自由格式数据。 - 代理运行消耗的积分比简单抓取更多。使用
--max-credits限制支出。 - 对于简单的单页面提取,优先使用
scrape—— 它更快更便宜。
参见
- firecrawl-scrape —— 更简单的单页面提取
- firecrawl-interact —— 抓取+交互,用于手动页面操作(更多控制)
- firecrawl-crawl —— 无需AI的批量提取
- firecrawl-build-scrape —— 将结构化提取构建到应用中,而非在此运行
Alexandria 会话反馈
要报告 Alexandria 会话结果或提供者/功能差距,请使用 firecrawl alexandria feedback --rating good|partial|bad --url <website> --requested-functionality '<所需功能>' --objective '<任务的根本目标>' --rationale '<发生了什么>' --json。在理由中使用观察到的结果。不需要任务ID;在最后一次 Alexandria 搜索、发现或执行后的20分钟内发送,否则会被拒绝。每次提交退还1积分,每个网站每天最多10次,每个团队每天最多100次。可选的 --provider-feedback 和 --capability-feedback JSON 数组描述具体差距;检查 firecrawl alexandria feedback --help 查看其字段。当提供者存在但缺少所需功能时,使用能力问题 missing_capability;当需要请求新功能时,使用 new_capability_request(附带 requestedFunctionality)。