工具
Stagehand 工具
一个将 Stagehand 与 CrewAI 集成用于浏览器交互和自动化的网络自动化工具
概述
StagehandTool 将 Stagehand 框架与 CrewAI 集成,使智能体能够使用自然语言指令与网站交互并自动化浏览器任务。
概述
Stagehand 是一个由 Browserbase 构建的强大浏览器自动化框架,允许 AI 智能体执行以下操作:
- 导航到网站
- 点击按钮、链接及其他元素
- 填写表单
- 从网页提取数据
- 观察和识别元素
- 执行复杂工作流
StagehandTool 包装了 Stagehand Python SDK,通过以下三个核心原语为 CrewAI 智能体提供浏览器控制能力:
- Act(行动):执行点击、输入或导航等操作
- Extract(提取):从网页提取结构化数据
- Observe(观察):识别和分析页面上的元素
先决条件
在使用此工具之前,请确保您拥有:
- 一个带有 API 密钥和项目 ID 的 Browserbase 帐户
- 一个 LLM(OpenAI 或 Anthropic Claude)的 API 密钥
- 已安装 Stagehand Python SDK
安装所需依赖项
用法
基本实现
StagehandTool 可以通过两种方式实现:
1. 使用上下文管理器(推荐)
推荐使用上下文管理器方法,因为它确保即使发生异常也能正确清理资源。
2. 手动资源管理
命令类型
StagehandTool 支持三种不同的命令类型,用于特定的网络自动化任务:
1. Act 命令
act 命令类型(默认)支持网页交互,例如点击按钮、填写表单和导航。
2. Extract 命令
extract 命令类型从网页检索结构化数据。
3. Observe 命令
observe 命令类型识别和分析网页元素。
配置选项
使用这些参数自定义 StagehandTool 的行为
最佳实践
- 具体明确:提供详细说明以获得更好的结果
- 选择适当的命令类型:为您的任务选择正确的命令类型
- 使用选择器:利用 CSS 选择器提高准确性
- 分解复杂任务:将复杂工作流拆分为多个工具调用
- 实现错误处理:为潜在问题添加错误处理
故障排除
常见问题及解决方案
- 会话问题:验证 Browserbase 和 LLM 提供商的 API 密钥
- 未找到元素:对于较慢的页面,增加
dom_settle_timeout_ms
- 操作失败:先使用
observe
识别正确的元素 - 数据不完整:优化指令或提供特定选择器
其他资源
关于 CrewAI 集成的问题,请访问:
- 加入 Stagehand 的 Slack 社区
- 在 Stagehand 仓库中提交问题
- 访问 Stagehand 文档