第 8 课 — Interact:解锁需要交互的网页
💡 进群学习加 wx: agentupdate
(申请发送: agentupdate)
(申请发送: agentupdate)
有些网页的内容需要点击按钮、向下滚动或登录后才能看到。Firecrawl 的 Interact 功能允许你像操作真实浏览器一样控制抓取流程。
8.1 交互工作流 (三步走)
Interact 不同于普通抓取,它需要维持一个“浏览器会话”:
- Scrape (创建会话):打开目标页面并获取一个
scrapeId。 - Interact (执行操作):通过
scrapeId发送指令(点击、输入、滚动等)。 - Interact Stop (释放资源):操作完成后,必须关闭会话以停止计费。
8.2 两种交互模式
1. Prompt 模式 (AI 驱动)
直接用自然语言描述你想做的动作。
示例:
"在搜索框输入 'Firecrawl' 并点击搜索按钮"。 优点:简单。缺点:AI 可能误解复杂的 DOM 结构。
2. Code 模式 (精确控制)
使用特定的 agent-browser 命令,适合确定性强的操作。
示例:
agent-browser type @e3 "Firecrawl" && agent-browser click @e5。
8.3 常用交互指令
| 指令 | 说明 |
|---|---|
click @selector |
点击元素(@e1, @e2 是 Firecrawl 自动标注的 ID) |
type @selector "text" |
在输入框输入文字 |
scroll down/up |
滚动页面 |
wait 2000 |
等待(单位:毫秒) |
screenshot |
在当前步骤截图 |
8.4 实战案例:登录后抓取
如果你需要抓取登录后的仪表板数据:
- Scrape 登录页面。
- Interact:输入账号密码并点击“登录”。
- Interact:等待页面跳转成功,执行数据提取。
- Interact Stop:完成任务。
8.5 重要提示
- 计费:Interact 模式按浏览器分钟计费(2 credits/分钟)。
- 超时:会话有闲置超时限制,如果长时间不发送指令,会话会自动过期。
- 及时停止:务必在操作结束后调用
firecrawl_interact_stop,否则会持续消耗 Credit 直到会话强制超时。