Install
openclaw skills install @thcjp/agent-browser-stagehandopenclaw skills install @thcjp/agent-browser-stagehand核心功能: 本技能提供、本地化处理时使用、时使用、化工作流场景等能力。
| 能力 | 免费版 | 付费版 |
|---|---|---|
| 基础功能 | 支持 | 支持 |
| 多标签页并行抓取 | 不支持 | 支持 |
| 反爬虫策略自动绕过 | 不支持 | 支持 |
| 页面结构变化自适应 | 不支持 | 支持 |
| 批量导出结构化数据 | 不支持 | 支持 |
详细的输入输出格式请参考下方章节说明。
| 场景 | 输入 | 输出 |
|---|---|---|
| 场景1 自然语言驱动浏览器自动化 | 用户请求数据 | 结构化处理结果 |
| 场景2 CLI直达交互 | 用户请求数据 | 结构化处理结果 |
| 场景3 免去手写选择器的繁琐 | 用户请求数据 | 结构化处理结果 |
不适用于:需要人工判断的复杂决策场景
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| content | string | 否 | agent-browser-stagehand处理的内容输入 |
| mode | string | 否 | 处理模式, 可选: json/text/markdown, |
| max_retries | integer | 否 | 单步最大重试次数, 默认: 2 |
| skip_steps | array | 否 | 跳过的步骤编号(用于断点续传), 默认: [] |
{
"success": true,
"data": {
"final_result": {
"stagehand_result": "stagehand_result_value",
"stagehand_metadata": "stagehand_metadata_value",
"stagehand_status": "stagehand_status_value"
},
"execution_log": [
{
"step": 1,
"name": "按流程执行",
"status": "completed",
"duration_ms": 1200,
"output_summary": "按流程执行"
},
{
"step": 2,
"name": "按流程执行",
"status": "completed",
"duration_ms": 3500,
"output_summary": "按流程执行"
},
{
"step": 3,
"name": "按流程执行",
"status": "completed",
"duration_ms": 2100,
"output_summary": "按流程执行"
},
{
"step": 4,
"name": "按流程执行",
"status": "completed",
"duration_ms": 800,
"output_summary": "按流程执行"
}
],
"total_duration_ms": 7600,
"gates_passed": 3,
"gates_total": 3
},
"error": null
}
中间产物模板参考: assets/agent-browser-stagehand_template
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 页面加载超时 | 目标网站响应慢或网络延迟 | 增加超时阈值,启用重试机制,检查代理配置 |
| 页面结构变化导致选择器失效 | 目标网站更新了DOM结构 | 切换到可访问性树定位元素,或提示用户提供新的选择器 |
| 反爬虫机制触发 | 频繁请求被目标站点识别 | 降低请求频率,启用随机延迟,更换User-Agent |
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
API Key配置方式:
export API_KEY="${API_KEY:?请设置环境变量}"
配置后需重启会话或开启新终端生效。API Key应妥善保管,避免泄露到版本控制系统.
browser navigate https://example.com
browser act "click the Sign In button"
browser extract "get the page title"
browser close
A: 请参考使用流程和依赖说明章节,确保运行环境满足要求后调用本技能。
| 错误场景2 | 原因 | 处理方式 |
|---|---|---|
| LLM响应超时或无响应 | 网络延迟或模型负载过高 | 请求重试;确认Agent平台LLM服务正常 |
| 输入内容格式不正确 | 用户输入不符合skill预期格式 | 检查输入是否符合skill使用说明中的格式要求,参考示例章节 |
| 执行结果与预期不符 | 指令描述不够明确或上下文不足 | 提供更详细的指令描述,补充必要的上下文信息 |
| 命令执行失败 | 运行环境不满足要求或权限不足 | 确认运行环境符合依赖说明中的要求;检查命令权限设置 |
| 操作步骤 | 手动耗时 | 自动化耗时 | 时间节约 | 准确率提升 |
|---|---|---|---|---|
| 页面导航 | 10分钟 | 1分钟 | 9分钟 | 10% |
| 数据提取 | 20分钟 | 2分钟 | 18分钟 | 15% |
| 多页面处理 | 1小时 | 10分钟 | 50分钟 | 20% |
| 数据比对 | 30分钟 | 5分钟 | 25分钟 | 25% |
| 报告生成 | 1小时 | 15分钟 | 45分钟 | 30% |
| 对比维度 | 本技能 | 手动操作 | Python脚本 | 专业软件 |
|---|---|---|---|---|
| 交互方式 | 自然语言 | 命令行 | 命令行 | 图形界面 |
| 学习成本 | 低 | 中 | 中 | 高 |
| 适应性强 | 高 | 低 | 中 | 高 |
| 易用性 | 高 | 低 | 中 | 高 |
| 成本效益 | 高 | 低 | 中 | 高 |
| 痛点 | 描述 | 影响范围 | 解决方案 | 量化效果 |
|---|---|---|---|---|
| 繁琐的手动操作 | 浪费大量时间和精力在手动操作上 | 用户体验和效率 | 自动化操作,减少手动步骤 | 时间节约20% |
| 选择器失效 | 网站结构变化导致选择器失效,影响操作 | 操作准确性 | 自适应选择器,应对结构变化 | 准确率提升15% |
| 反爬虫机制 | 频繁请求被识别,影响数据采集 | 数据采集效率 | 自动绕过反爬虫策略 | 数据采集效率提升30% |
A: 智能体浏览器支持主流的浏览器,如Chrome和Firefox,并且可以通过配置支持其他浏览器。
A: 在初始化浏览器会话时,可以通过设置代理参数来配置智能体浏览器的代理。
A: 智能体浏览器通过自适应选择器来处理页面结构变化,如果遇到选择器失效,可以提示用户提供新的选择器。
A: 智能体浏览器的数据输出格式为JSON,其中包含了执行日志、结果数据和状态信息。
A: 是的,智能体浏览器支持中文交互,无需复杂配置即开即用。
| 错误现象 | 可能原因 | 诊断步骤 | 解决方案 |
|---|---|---|---|
| 页面加载失败 | 网络问题或网站无法访问 | 检查网络连接,重试或更换代理 | 重新连接网络或更换代理 |
| 数据提取错误 | 选择器错误或页面结构变化 | 检查选择器或页面结构 | 更正选择器或提供新的选择器 |
| 操作超时 | 网站响应慢或网络延迟 | 增加超时时间,检查网络状态 | 增加超时时间,优化网络配置 |
| 反爬虫机制触发 | 频繁请求被识别 | 降低请求频率,更换User-Agent | 降低请求频率,更换User-Agent |
| 风险项 | 等级 | 防护措施 | 验证方法 |
|---|---|---|---|
| API密钥泄露 | 高 | 通过环境变量配置,禁止硬编码 | 定期检查代码和配置文件 |
| 命令执行风险 | 高 | 仅执行白名单命令,避免拼接用户输入 | 使用沙箱环境测试 |
| 网络通信安全 | 中 | 使用HTTPS协议,验证SSL证书 | 定期检查证书有效期 |
| 敏感数据暴露 | 高 | 输出结果中不包含密钥、令牌等敏感信息 | 日志脱敏审查 |
| 未授权访问 | 中 | 限制访问权限,实施认证机制 | 定期审计访问日志 |
针对智能体浏览器使用中可能遇到的常见问题,提供以下排查方案:
| 错误类型 | 原因分析 | 解决方案 |
|---|---|---|
| API认证失败(401) | API密钥错误或过期 | 检查密钥配置,重新生成token |
| 接口限流(429) | 请求频率超出限制 | 降低调用频率,启用重试退避策略 |
| 响应超时(504) | 网络延迟或服务端负载过高 | 增加超时阈值,检查网络连接 |
| 文件不存在 | 路径错误或文件未创建 | 检查路径拼写,确认文件已生成 |
| 文件格式不支持 | 扩展名不在支持列表中 | 转换为支持的格式后重试 |
| 权限不足 | 当前用户无读写权限 | 检查文件权限,以管理员身份运行 |
| 命令执行失败 | 参数错误或环境依赖缺失 | 检查命令语法,确认依赖已安装 |
| 进程超时 | 命令执行时间过长 | 增加超时设置,优化命令参数 |
| 网络连接失败 | DNS解析失败或防火墙拦截 | 检查网络配置,确认代理设置 |