🌐 浏览器自动化
YingClaw 内置无头浏览器自动化能力,基于 Rust 原生实现(Node.js 作为备选方案),可在无图形界面的环境中完成网页操作。
能力概述
YingClaw 的浏览器自动化支持以下操作:
- 🧭 页面导航:打开 URL、前进后退
- 🖱️ 元素交互:点击按钮、填写输入框、选择下拉菜单
- 📸 页面截图:捕获当前页面全屏或指定区域
- 📄 内容提取:提取页面文本、表格、结构化数据
- 🔐 登录流程:自动填写表单、处理登录
使用方式:agent-browser 技能
浏览器自动化通过 agent-browser 技能触发。在对话中提及网页操作需求时,YingClaw 会自动加载该技能。
关键命令
| 命令 | 功能 | 示例 |
|---|---|---|
navigate | 导航到指定 URL | navigate url="https://example.com" |
click | 点击页面元素 | click selector="#submit-btn" |
type | 在输入框中输入文本 | type selector="#search" text="YingClaw" |
snapshot | 获取页面可访问性快照 | snapshot |
screenshot | 截取当前页面截图 | screenshot filename="result.png" |
使用场景
| 场景 | 说明 |
|---|---|
| 🌐 网页数据采集 | 自动抓取网页内容、表格数据、列表信息 |
| 🧪 自动化测试 | 模拟用户操作流程,验证页面功能 |
| 📝 表单填写 | 自动填充和提交在线表单 |
| 🔐 登录流程 | 处理需要登录的网站操作 |
| 📊 数据监控 | 定时检查网页内容变化 |
使用示例
典型操作流程
> "帮我打开百度,搜索 YingClaw,然后截图搜索结果"
YingClaw 执行:
1. navigate → 打开百度首页
2. type → 在搜索框输入"YingClaw"
3. click → 点击搜索按钮
4. screenshot → 截取搜索结果页面
数据采集
> "从这个页面的表格中提取所有产品名称和价格"
YingClaw 执行:
1. navigate → 打开目标页面
2. snapshot → 获取页面结构
3. 提取表格数据并格式化返回
注意事项
| 注意事项 | 说明 |
|---|---|
| ⏱️ 网络超时 | 页面加载超时默认 30 秒,复杂页面建议增加等待 |
| 🔐 登录状态 | 浏览器上下文在会话期间保持,可维持登录态 |
| 🧩 验证码 | 图形验证码自动处理能力有限,可能需要人工介入 |
| 📦 资源加载 | 无头模式默认不加载图片和视频以提升速度 |
| 🔒 安全限制 | 部分网站可能检测并拦截无头浏览器 |
最佳实践
- 先 snapshot 再操作:获取页面快照确认元素选择器后再交互
- 增加等待:动态加载的页面在操作前适当等待元素就绪
- 错误重试:网络不稳定时自动重试失败的导航请求
- 会话复用:同一会话内的登录状态可跨页面保持
下一步
浏览器自动化让 YingClaw 能够与 Web 世界交互,接下来了解 🤖 多代理编排 处理复杂任务。