Browser Use 是 GitHub 上最火的 AI 浏览器自动化框架,没有之一。截至 2026 年 7 月底,107,036 颗星、11,768 个 fork、MIT 协议、纯 Python,最新版 0.13.7 在 7 月 27 日刚发布,距 2024 年 10 月 31 日首提交不到两年。作者是苏黎世联邦理工的 Magnus Müller 和 Gregor Žunič,项目在苏黎世和旧金山两地维护。它干的事一句话能说明白:让大模型像人一样用浏览器——截屏看页面、决定下一步、输出鼠标点击和键盘输入。在 Odysseys 榜单上它以 87.4% 的平均通过率排第一,压过 OpenAI、Anthropic、Google、微软的 computer-use agent,这个榜单测的是 200 个长程网页任务。
解决什么痛点
写过爬虫的人都踩过这几样:Selenium/Playwright 脚本靠 CSS selector 定位元素,对方网页一改版,find_element(by=ID) 全线崩溃,半夜告警;登录态、分页、弹窗、验证码、懒加载,每一样都得手写容错,代码比业务逻辑还长;动态 SPA 页面元素延迟出现,显式等待写到怀疑人生;碰到 Cloudflare 挡爬、canvas 验证码、滑块,传统脚本直接投降;想把浏览器能力塞进自己的 AI agent,又得自己封装一堆 action。Browser Use 把这些打包到一个 Agent 里:你只给一句任务目标("把这网站所有商品价格抓下来导成 CSV"),它自己看截图规划路径、处理登录分页弹窗、失败了重试。核心转变是从「写死 selector」换成「让模型用眼睛看」,网页改版只要视觉上还在,agent 就还能找到。
视觉路线:不靠 selector 怎么活下来
它和传统脚本的根本分野在这。传统自动化是结构化寻址:DOM 树、XPath、CSS class,页面结构一变就失配。Browser Use 走视觉优先:每一步先截屏,把图喂给 LLM,模型像人一样「看」出该点哪、输入什么,再输出带坐标的动作指令。这带来三个直接后果。一是抗改版,按钮从红色挪到蓝色、class 名从 btn-primary 改成 v2__cta,只要它还出现在画面里,agent 照点不误。二是能搞定动态页,懒加载、下拉刷新、无限滚动,模型等元素出现再行动,不用写死 wait。三是跨站通用,同一套 agent 逻辑能在没见过的新网站上跑,因为它不预知结构。代价是慢且贵:每步一次 LLM 调用加一次截屏,复杂任务动辄几十轮,token 和时间成本远高于 selector 脚本。所以它定位不是「替代 Playwright 做高频稳定抓取」,而是「做 Playwright 做不了的——需要看、需要判断、需要应变」。
一个 key 通吃 Claude/GPT/Gemini,还能本地离线
模型层是它最灵活的地方。官方的 ChatBrowserUse 接受 provider 前缀的 model id,一个 BROWSER_USE_API_KEY 就能调 Claude、GPT、Gemini 全家桶,不用分别申请 OpenAI/Anthropic/Google 三套 key:anthropic/claude-sonnet-4-6、openai/gpt-5.5、google/gemini-3-pro 写法直出。官方还自研了针对浏览器任务优化的 bu-* 模型(hosted bu-2-0、开源预览 browser-use/bu-30b-a3b-preview),平均比其他模型快 3-5 倍,准确率还在 SOTA 区间。不想被云绑死也行,直接换成 ChatOpenAI(model="gpt-4o")、ChatAnthropic(model="claude-opus-4-8") 走自己的 key,或者接本地 ChatOllama(model="qwen2.5") 完全离线——合同、内部系统、敏感后台操作的数据全程不出本机。官方在 100 个真实网页任务上做了基准(BU Bench V1),各家模型成功率公开在 browser-use/benchmark 仓库,选模型可以照着跑分挑。
自定义工具与 Agent 编排
光会点鼠标不够,很多时候 agent 得调 API 才高效。Browser Use 用 @tools.action 装饰器挂自定义函数:你写个 query_db(sql) 或 send_slack(msg),LLM 自己判断什么时候该「看图操作」、什么时候该直接调工具,视觉路线和 API 调用混着用——比如抓一个需要登录的后台,登录走浏览器视觉,数据拉取走 API,省掉无意义的截屏轮次。并发上原生 async,能同时开多个浏览器上下文跑多 Tab,批量任务可以铺开跑。入口分两条路:一是 Python 库,适合把浏览器 agent 嵌进自己产品、定时调度、并行抓取这类可复用自动化;二是 CLI,给已有的 coding agent(Claude Code、Codex、Cursor、Hermes、OpenClaw)当「眼睛和手」,跑一次 browser-use skill install 注册技能,之后直接对 agent 说「把这个视频传到 YouTube」「对比这三款笔记本给我一张价格表」,它自己驱动浏览器干完。判断准则:一次性任务走 CLI,可复用自动化走库。
三分钟上手
# 1. 装(Python >= 3.11)
uv add browser-use
# 或 pip install browser-use
playwright install chromium # 装浏览器内核
# 2. 配 .env,任选一种
echo 'BROWSER_USE_API_KEY=your-key' > .env # 官方一个 key 通吃
# 或用自己的:GOOGLE_API_KEY / ANTHROPIC_API_KEY
# 3. 最小可跑
python -c "
import asyncio
from browser_use import Agent, ChatBrowserUse
async def main():
agent = Agent(
task='打开 github.com,搜 browser-use,返回第一个仓库的 stars 数',
llm=ChatBrowserUse(model='openai/gpt-5.5'),
)
await agent.run()
asyncio.run(main())
"接本地模型离线把 llm 换成 ChatOllama(model="qwen2.5"),其余不动。已经有 coding agent 的话更省事,把 README 里那段 setup prompt 丢给 Claude Code,它自己装、自己连浏览器,你只管下指令。
适合谁 + 五个踩坑
适合:要在频繁改版的 SaaS 后台、多平台批量操作的人;要抓登录态、反爬页面的;做 AI agent 想给手加上「眼睛」的开发者;隐私或离线场景要数据不出域的。
踩坑记五条。一是 Chrome 吃内存,并行开多了机器会爆,生产规模官方直接劝你上 Browser Use Cloud,它管浏览器基础设施、内存、代理轮换、隐身指纹、并行调度。二是验证码,开源版不内置破解,Cloudflare 挡爬和滑块基本过不了,要么上它的 Cloud(自带 stealth 指纹 + 代理轮换 + 验证码求解),要么自己挂代理。三是登录态复用,别每次重新扫码,用真实浏览器 profile 复用你 Chrome 已登录的会话,或用 AgentMail 起临时账号,远程浏览器还能 curl ... | BROWSER_USE_API_KEY=xxx sh 把本地 profile 同步过去。四是成本,视觉路线每步一次 LLM 调用,长任务 token 烧得快,简单高频的抓取老老实实写 Playwright 更省钱。五是合规,自动化操作别人网站看 ToS,批量抓取、绕过反爬有法律灰区,商用前读条款,本工具 MIT 但你的用法不一定 MIT。
和竞品比
和传统 Selenium/Playwright 比,本质是「脚本」对「agent」:前者快、稳、便宜但脆、靠 selector、改版即崩;后者慢、贵但会看、会应变、抗改版,定位互补不是替代。和 OpenAI Operator、Anthropic computer-use、Google Project Mariner、微软的 computer-use 比,Browser Use 在 Odysseys 200 个长程网页任务榜上 87.4% 排第一,领先这些闭源大厂方案,而且它开源 MIT、模型可换、能本地离线、能嵌进自家代码,闭源的是黑盒 SaaS。和同类的 Phase、AgentE 比生态最厚:107k star 社区、100 任务公开基准、1000+ 云端集成(Gmail/Slack/Notion)。一句话:要稳定高频抓取写 Playwright,要让 AI 看着页面自己应变、还想要开源可控,选 Browser Use。
参考来源
- Browser Use GitHub 仓库(107k star,MIT,Python):https://github.com/browser-use/browser-use
- 官方文档(库 / CLI / Cloud / 自定义工具):https://docs.browser-use.com
- Odysseys 榜单(200 长程任务,87.4% 第一):https://odysseysbench.com/leaderboard
- BU Bench V1 基准(100 真实任务,各家模型成功率):https://github.com/browser-use/benchmark
- 支持模型与定价(ChatBrowserUse provider 前缀 id):https://docs.browser-use.com/supported-models