📦 Browser Use — 浏览器自动化
v2.0.1一键驱动浏览器:自动填表、截屏、爬数据、跑测试,支持本地 Chrome 与云端并行会话,用 CDP 与 JS 脚本精准操控网页。
详细分析 ▾
运行时依赖
版本
- 新增两份参考文档:CDP Python 用法与多会话工作流。 - 明确区分 headless 模式、连接 Chrome 与使用云浏览器。 - 在文档中显式列出标签管理命令(`tab list`、`tab new`、`tab switch`、`tab close`)。 - 改进云连接、API 密钥注册与代理自注册的说明。 - 增加多会话(并行浏览器)使用指导。 - 更新故障排查指南,涵盖命令失败与会话清理。
安装命令
点击复制技能文档
# 使用 browser-use CLI 进行浏览器自动化 browser-use 命令提供快速、持久的浏览器自动化。后台守护进程让浏览器在命令之间保持开启,单次调用延迟约 50ms。 ## 前置条件 ``bash browser-use doctor # 验证安装 ` 安装细节见 https://github.com/browser-use/browser-use/blob/main/browser_use/skill_cli/README.md ## 核心流程 1. 导航:browser-use open —— 启动无头浏览器并打开页面 2. 检查:browser-use state —— 返回可点击元素及其索引 3. 交互:使用 state 中的索引(browser-use click 5、browser-use input 3 "text") 4. 确认:browser-use state 或 browser-use screenshot 进行验证 5. 重复:浏览器在命令之间保持开启 若命令失败,先运行 browser-use close 清除异常会话,然后重试。 如需使用用户已有的 Chrome(保留登录态/cookie):先运行 browser-use connect。 如需使用云浏览器:先运行 browser-use cloud connect。之后命令用法相同。 ## 浏览器模式 `bash browser-use open # 默认:无头 Chromium(无需配置) browser-use --headed open # 可见窗口(调试时用) browser-use connect # 连接用户 Chrome(保留登录态/cookie) browser-use cloud connect # 云浏览器(零配置,需 API key) browser-use --profile "Default" open # 指定 Chrome 配置启动 ` 执行 connect 或 cloud connect 后,后续所有命令将指向该浏览器,无需额外参数。 ## 命令 `bash # 导航 browser-use open # 访问 URL browser-use back # 后退 browser-use scroll down # 向下滚动(--amount N 指定像素) browser-use scroll up # 向上滚动 browser-use tab list # 列出所有标签页 browser-use tab new [url] # 新建标签页(可指定 URL) browser-use tab switch # 按索引切换标签页 browser-use tab close [index...] # 关闭一个或多个标签页 # 页面状态 —— 先运行 state 获取元素索引 browser-use state # 返回 URL、标题及带索引的可点击元素 browser-use screenshot [path.png] # 截图(无路径则返回 base64,--full 整页截图) # 交互 —— 使用 state 返回的索引 browser-use click # 按索引点击元素 browser-use click # 按像素坐标点击 browser-use type "text" # 在焦点元素输入文本 browser-use input "text" # 点击元素后输入 browser-use keys "Enter" # 发送按键(如 "Control+a" 等) browser-use select "option" # 选择下拉选项 browser-use upload # 上传文件到文件输入框 browser-use hover # 悬停元素 browser-use dblclick # 双击元素 browser-use rightclick # 右键点击元素 # 数据提取 browser-use eval "js code" # 执行 JavaScript 并返回结果 browser-use get title # 页面标题 browser-use get html [--selector "h1"] # 页面 HTML(或限定选择器) browser-use get text # 元素文本内容 browser-use get value # 输入框/文本域值 browser-use get attributes # 元素属性 browser-use get bbox # 边界框(x, y, width, height) # 等待 browser-use wait selector "css" # 等待元素出现(--state visible|hidden|attached|detached,--timeout ms) browser-use wait text "text" # 等待文本出现 # Cookie browser-use cookies get [--url ] # 获取 cookie(可按 URL 过滤) browser-use cookies set # 设置 cookie(--domain, --secure, --http-only, --same-site, --expires) browser-use cookies clear [--url ] # 清除 cookie browser-use cookies export # 导出为 JSON browser-use cookies import # 从 JSON 导入 # 会话 browser-use close # 关闭浏览器并停止守护进程 browser-use sessions # 列出活跃会话 browser-use close --all # 关闭所有会话 ` 高级浏览器控制(CDP、设备模拟、标签页激活)见 references/cdp-python.md。 ## 云 API `bash browser-use cloud connect # 申请云浏览器并连接(零配置) browser-use cloud login # 保存 API key(或设置 BROWSER_USE_API_KEY) browser-use cloud logout # 移除 API key browser-use cloud v2 GET /browsers # REST 透传(v2 或 v3) browser-use cloud v2 POST /tasks '{"task":"...","url":"..."}' browser-use cloud v2 poll # 轮询任务直到完成 browser-use cloud v2 --help # 显示 API 端点 ` cloud connect 会创建一个带持久配置的云浏览器(首次使用自动创建),通过 CDP 连接并打印实时 URL。browser-use close 会断开并停止云浏览器。 如需自定义浏览器设置(代理、超时、指定配置),可直接使用 cloud v2 POST /browsers 并传入所需参数。 ### Agent 自助注册 仅当尚未拥有 API key 时使用(运行 browser-use doctor 查看是否已设置 api_key)。若已登录,请跳过。 1. browser-use cloud signup —— 获取挑战 2. 解决挑战 3. browser-use cloud signup --verify —— 验证并保存 API key 4. browser-use cloud signup --claim —— 生成供人工认领账户的 URL ## 隧道 `bash browser-use tunnel # 启动 Cloudflare 隧道(幂等) browser-use tunnel list # 显示活跃隧道 browser-use tunnel stop # 停止隧道 browser-use tunnel stop --all # 停止全部隧道 ` ## 配置管理 `bash browser-use profile list # 列出检测到的浏览器及配置 browser-use profile sync --all # 同步所有配置到云端 browser-use profile update # 下载/更新 profile-use 二进制 ` ## 命令链式调用 可用 && 链式执行命令。浏览器通过守护进程保持开启,链式调用安全高效。 `bash browser-use open https://example.com && browser-use state browser-use input 5 "user@example.com" && browser-use input 6 "password" && browser-use click 7 ` 不需要中间输出时可链式执行;需先解析 state 获取索引时,请分步执行。 ## 常见工作流 ### 带认证浏览 当任务需要登录站点(Gmail、GitHub、内部工具)时,使用 Chrome 配置: `bash browser-use profile list # 查看可用配置 # 询问用户使用哪个配置,然后: browser-use --profile "Default" open https://github.com # 已登录状态 ` ### 暴露本地开发服务器 `bash browser-use tunnel 3000 # → https://abc.trycloudflare.com browser-use open https://abc.trycloudflare.com # 访问隧道地址 ` ## 多浏览器 对于子代理或并行多浏览器场景,使用 --session NAME。每个会话拥有独立浏览器。详见 references/multi-session.md。 ## 配置 `bash browser-use config list # 显示所有配置项 browser-use config set cloud_connect_proxy jp # 设置值 browser-use config get cloud_connect_proxy # 获取值 browser-use config unset cloud_connect_timeout # 删除值 browser-use doctor # 显示配置及诊断 browser-use setup # 交互式安装后设置 ` 配置保存在 ~/.browser-use/config.json。 ## 全局选项 | 选项 | 说明 | |--------|-------------| | --headed | 显示浏览器窗口 | | --profile [NAME] | 使用真实 Chrome(仅 --profile 时使用 "Default") | | --cdp-url | 通过 CDP URL 连接(http:// 或 ws://) | | --session NAME | 指定会话名称(默认:"default") | | --json | 以 JSON 格式输出 | | --mcp | 通过 stdin/stdout 作为 MCP 服务器运行 | ## 小贴士 1. 始终先运行 state,查看可用元素及其索引 2. 调试时使用 --headed,直观观察浏览器行为 3. 会话持久化 —— 浏览器在命令之间保持开启 4. CLI 别名:bu、browser、browseruse 均可用 5. 命令失败时,先运行 browser-use close,再重试 ## 故障排除 - 浏览器无法启动? 先 browser-use close,再 browser-use --headed open - 找不到元素? 先 browser-use scroll down,再 browser-use state - 运行诊断: browser-use doctor ## 清理 `bash browser-use close # 关闭浏览器会话 browser-use tunnel stop --all # 停止隧道(如有) ``