讲师中心 微信公众号
AI工具推荐 视频效率加速

browser-cli

Polar Sponsor
爱发电 赞助
.NET 9.0

使用 browser-use 从命令行自动化浏览器任务,包括导航、交互、截图、标签页、Cookie、JavaScript、云浏览等功能。

浏览器使用的 CLI 技能

功能概述

浏览器使用的 CLI 技能是一项面向实际任务的技能,主要用于此特性封面;随时使用此技能, 使用浏览器使用命令行自动启用浏览器;

核心要点

  • 这包括导航页面, 点击/ 打印/ 过滤。
  • 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。

使用与执行

该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;

结果检查与注意事项

若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

browser-use CLI 技能

本技能涵盖范围

当您需要通过命令行使用 browser-use 自动化浏览器操作时,均可使用本技能。涵盖的操作包括:页面导航、点击/输入/填写表单、截图、执行 JavaScript、管理标签页、处理 Cookie、驱动云浏览器,以及通过隧道暴露本地服务器。

安装

前提条件

平台 要求
macOS Python 3.11+
Linux Python 3.11+
Windows Git for Windows + Python 3.11+

一键安装(推荐)

# macOS / Linux
curl -fsSL https://browser-use.com/cli/install.sh | bash

# Windows(PowerShell)
& "C:Program FilesGitbinbash.exe" -c 'curl -fsSL https://browser-use.com/cli/install.sh | bash'

手动安装

uv pip install browser-use
browser-use install   # 下载 Chromium
browser-use doctor    # 验证环境配置

安装后健康检查

browser-use doctor   # 输出诊断信息与配置
browser-use setup    # 可选的交互式向导

核心心智模型

标准工作流始终为:

  1. 打开 页面 → browser-use open
  2. 检查 页面 → browser-use state(返回带编号的可交互元素索引)
  3. 交互(基于上述索引)→ browser-use click 3、browser-use input 1 "text"
  4. 重复 — 后台守护进程在各命令间保持浏览器活跃(延迟约 50ms)

首次执行命令时将自动启动后台守护进程,并持续运行,直至您执行 browser-use close。

浏览器模式

# 默认:无头 Chromium(不可见)
browser-use open https://example.com

# 可见窗口
browser-use --headed open https://example.com

# 使用本地 Chrome(保留登录态、Cookie 和扩展程序)
browser-use connect

# 使用指定 Chrome 用户资料
browser-use --profile "Default" open https://gmail.com

# 零配置云浏览器(需 API 密钥)
browser-use cloud connect

# 通过 CDP 连接已运行的浏览器
browser-use --cdp-url http://localhost:9222 open https://example.com
browser-use --cdp-url ws://localhost:9222/devtools/browser/... state

执行 connect 或 cloud connect 后,后续所有命令将自动作用于该浏览器,无需额外参数。

全部命令

导航

browser-use open                # 导航至指定 URL
browser-use back                     # 返回上一页
browser-use scroll down              # 向下滚动
browser-use scroll up                # 向上滚动
browser-use scroll down --amount 1000  # 按像素值滚动

检查

browser-use state                    # 获取当前 URL、标题及带编号的可点击元素列表
browser-use screenshot output.png    # 截图并保存为文件
browser-use screenshot               # 截图为 base64 编码(输出至 stdout)
browser-use screenshot --full page.png  # 全页截图

交互

browser-use click             # 按索引点击元素(索引来自 state 命令)
browser-use click             # 在指定像素坐标处点击
browser-use type "text"              # 向当前聚焦元素输入文本
browser-use input  "text"     # 先点击元素再输入(表单操作最常用)
browser-use keys "Enter"             # 发送键盘按键
browser-use keys "Control+a"         # 发送组合键
browser-use select  "value"   # 选择下拉框选项
browser-use upload  /path/to/file  # 向文件输入框上传文件
browser-use hover             # 鼠标悬停于元素上方
browser-use dblclick          # 双击元素
browser-use rightclick        # 右键点击元素

标签页

browser-use tab list                 # 列出所有已打开标签页
browser-use tab new                  # 打开空白标签页
browser-use tab new https://url.com  # 以指定 URL 打开新标签页
browser-use tab switch        # 切换至指定索引的标签页
browser-use tab close                # 关闭当前标签页
browser-use tab close         # 关闭指定索引的标签页

Cookie

browser-use cookies get                        # 获取全部 Cookie
browser-use cookies get --url https://site.com # 获取指定 URL 的 Cookie
browser-use cookies set name value             # 设置 Cookie
browser-use cookies set name val --domain .example.com --secure
browser-use cookies set name val --same-site Strict   # Strict | Lax | None
browser-use cookies set name val --expires 1735689600 # Unix 时间戳
browser-use cookies clear                      # 清空全部 Cookie
browser-use cookies clear --url https://site.com
browser-use cookies export cookies.json        # 导出为 JSON 文件
browser-use cookies import cookies.json        # 从 JSON 文件导入

等待

browser-use wait selector ".btn"               # 等待元素可见
browser-use wait selector ".loading" --state hidden  # 等待元素隐藏
browser-use wait text "Success"                # 等待页面出现指定文本
browser-use wait selector "h1" --timeout 5000 # 自定义超时时间(毫秒)

获取(信息提取)

browser-use get title                  # 获取页面标题
browser-use get html                   # 获取完整页面 HTML
browser-use get html --selector "main" # 获取指定元素的 HTML
browser-use get text            # 获取元素的文本内容
browser-use get value           # 获取 input/textarea 的值
browser-use get attributes      # 获取元素全部属性
browser-use get bbox            # 获取元素边界框(x, y, width, height)

JavaScript

browser-use eval "document.title"
browser-use eval "Array.from(document.querySelectorAll('a')).map(a => a.href)"
browser-use eval "window.scrollTo(0, document.body.scrollHeight)"

Python(持久会话)

browser-use python "x = 42"              # 定义变量
browser-use python "print(x)"            # 访问变量(输出:42)
browser-use python "print(browser.url)"  # 访问 browser 对象
browser-use python --vars                # 显示所有已定义变量
browser-use python --reset               # 清空命名空间
browser-use python --file script.py      # 运行 Python 脚本文件

会话管理

每个 --session 均拥有独立的守护进程、套接字和浏览器实例。

# 默认会话(隐式)
browser-use open https://example.com
browser-use state

# 命名会话
browser-use --session work open https://example.com
browser-use --session personal open https://gmail.com
browser-use --session work state    # 作用于 work 浏览器

# 列出所有活跃会话
browser-use sessions

# 关闭指定会话
browser-use --session work close

# 关闭所有会话
browser-use close --all

# 通过环境变量指定会话
BROWSER_USE_SESSION=work browser-use state

云 API

认证

browser-use cloud login sk-abc123...    # 保存 API 密钥
browser-use cloud logout                # 删除 API 密钥
# 或:export BROWSER_USE_API_KEY=sk-abc123...

云浏览器

browser-use cloud connect              # 创建并连接云浏览器
browser-use state                      # 连接成功后可正常执行命令
browser-use close                      # 断开连接并停止云浏览器
browser-use cloud close                # 同样会停止云浏览器

REST 透传

browser-use cloud v2 GET /browsers
browser-use cloud v2 POST /tasks '{"task":"Search for AI news","url":"https://google.com"}'
browser-use cloud v2 poll     # 轮询直至任务完成
browser-use cloud v3 POST /path '{"key":"value"}'
browser-use cloud v2 --help            # 显示全部 v2 API 接口
browser-use cloud v3 --help            # 显示全部 v3 API 接口

隧道(将本地服务器暴露给云浏览器)

browser-use tunnel 3000                # 将 localhost:3000 暴露为公开 HTTPS 地址
browser-use tunnel list                # 列出所有活跃隧道
browser-use tunnel stop 3000           # 停止指定端口的隧道
browser-use tunnel stop --all          # 停止全部隧道

# 使用云浏览器测试本地应用的典型流程:
npm run dev &
browser-use tunnel 3000                # → https://abc.trycloudflare.com
browser-use cloud connect
browser-use open https://abc.trycloudflare.com

用户资料管理(同步 Chrome Cookie 至云端)

browser-use profile                    # 启动交互式同步向导
browser-use profile list               # 列出检测到的浏览器及其用户资料
browser-use profile sync --all         # 同步全部用户资料至云端
browser-use profile sync --browser "Google Chrome" --profile "Default"
browser-use profile auth --apikey 
browser-use profile inspect --browser "Google Chrome" --profile "Default"
browser-use profile update             # 更新 profile-use 二进制文件

全局选项

标志 说明
--headed 显示浏览器窗口
--profile [NAME] 使用本地 Chrome 用户资料(仅使用标志则默认为 "Default")
--connect 通过 CDP 自动发现正在运行的 Chrome
--cdp-url 通过 CDP URL 连接已运行的浏览器
--session NAME 指定目标命名会话(默认为 "default")
--json 以 JSON 格式输出
--mcp 作为 MCP 服务端通过 stdin/stdout 运行

配置

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/config.json

模板生成

browser-use init                          # 启动交互式模板选择器
browser-use init --list                   # 列出全部可用模板
browser-use init --template basic         # 生成指定模板
browser-use init --output my_script.py    # 指定输出文件名
browser-use init --force                  # 覆盖已有文件

目录结构

~/.browser-use/
├── config.json          # API 密钥与设置
├── bin/
│   └── profile-use      # 托管的 Go 二进制文件(自动下载)
├── tunnels/
│   ├── {port}.json      # 隧道元数据
│   └── {port}.log       # 隧道日志
├── default.state.json   # 守护进程生命周期状态
├── default.sock         # 守护进程套接字(临时)
├── default.pid          # 守护进程 PID(临时)
└── cli.log              # 守护进程日志

可通过 BROWSER_USE_HOME 环境变量覆盖基础目录。

常用示例

填写并提交表单

browser-use open https://example.com/contact
browser-use state
# 输出:[0] input "Name", [1] input "Email", [2] button "Submit"
browser-use input 0 "John Doe"
browser-use input 1 "john@example.com"
browser-use click 2
browser-use wait text "Thank you"

使用 JavaScript 抓取数据

browser-use open https://news.ycombinator.com
browser-use eval "Array.from(document.querySelectorAll('.titleline a')).slice(0,5).map(a => a.textContent)"

多步骤 Python 自动化

browser-use open https://example.com
browser-use python "
for i in range(5):
    browser.scroll('down')
    browser.wait(0.5)
browser.screenshot('scrolled.png')
"

使用已保存的 Chrome 用户资料登录

browser-use --profile "Default" open https://gmail.com
browser-use state
# Gmail 收件箱已自动完成登录

并行运行两个浏览器

browser-use --session a open https://site-a.com
browser-use --session b open https://site-b.com
browser-use --session a state
browser-use --session b state
browser-use close --all

通过云浏览器测试本地应用

npm run dev &
browser-use tunnel 3000
# 复制控制台输出的公网 URL,例如 https://xyz.trycloudflare.com
browser-use cloud connect
browser-use open https://xyz.trycloudflare.com
browser-use screenshot check.png

Windows 故障排查

ARM64 Windows — 安装 x64 版 Python 以启用模拟:

winget install Python.Python.3.11 --architecture x64

存在多个 Python 版本 — 固定 Python 版本:

$env:PY_PYTHON=3.11

PATH 未更新 — 重启终端,或改用 Git Bash 运行:

& "C:Program FilesGitbinbash.exe" -c 'browser-use --help'

守护进程无法启动 — 终止残留进程:

wmic process where "name='python.exe' and commandline like '%browser%use%'" get processid
taskkill /PID  /F

残留虚拟环境 — 彻底清理并重装:

wmic process where "name='python.exe' and commandline like '%browser%use%'" call terminate
Remove-Item -Recurse -Force "$env:USERPROFILE.browser-use-env"
# 重新运行安装脚本

速查卡片

目标 命令
启动并导航 browser-use open
查看页面元素 browser-use state
点击元素 browser-use click
填写输入框 browser-use input "text"
按下按键 browser-use keys "Enter"
截图 browser-use screenshot out.png
执行 JavaScript browser-use eval "js here"
等待元素出现 browser-use wait selector ".cls"
获取页面 HTML browser-use get html
关闭浏览器 browser-use close
使用本地 Chrome browser-use connect
云浏览器 browser-use cloud connect
命名会话 browser-use --session NAME
显示配置 browser-use doctor
目录

热门AI工具

更多
火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

相关专题

更多
Vite 项目如何打包和部署
Vite 项目如何打包和部署

Vite项目打包部署专题汇集生产构建、产物预览、输出目录、资源路径、Nginx与GitHub Pages部署及常见白屏和路由404问题的已审核文章,帮助读者完成上线流程。

0

2026.10.28

Vite 如何搭配 Vue.js
Vite 如何搭配 Vue.js

Vite搭配Vue.js专题汇集创建Vue 3项目、配置开发环境、路径别名、Vue插件、代理、多环境构建与调试的已审核文章,帮助读者完成从初始化到日常开发的配置。

0

2026.10.28

Vite 项目目录怎么看
Vite 项目目录怎么看

Vite项目目录专题汇集入口文件、src源码、public静态资源、路径别名、项目根目录和构建输出目录相关的已审核文章,帮助读者理解各文件夹的用途与引用方式。

0

2026.10.28

Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

0

2026.10.22

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

0

2026.10.22

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

0

2026.10.22

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

0

2026.10.22

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

0

2026.10.22

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

0

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn