TL;DR
Browser Use 是一个让 AI Agent 像人类一样操作浏览器的开源框架,底层基于 Playwright。凭借在 Odysseys Benchmark 上 87.4% 的平均成功率登顶,它已成为当前 Web Agent 领域的事实标准之一。其核心价值在于将复杂的 DOM 交互抽象为自然语言任务,支持从本地开发到云端大规模并发的全场景覆盖。
它解决什么问题
传统 Web Scraping(如 BeautifulSoup/Selenium)依赖静态 CSS/XPath,面对动态渲染、反爬机制或频繁变更的 UI 时极易失效。Browser Use 解决的是“通用 Web 自动化”问题:通过 LLM 理解页面语义,动态决策点击、输入和导航。随着 Computer Use(如 OpenAI Operator)的兴起,用户不再满足于提取数据,而是希望 Agent 能完成填表、登录、多步跳转等复杂工作流。Browser Use 的出现填补了“代码级控制”与“自然语言意图”之间的鸿沟。
核心做法
架构上,Browser Use 将浏览器实例(Playwright)与 LLM Agent 解耦。核心流程包括:
1. DOM 感知:将页面结构转化为 LLM 可理解的文本表示(如 Accessibility Tree),而非原始 HTML。
2. Action Space:定义了一系列原子操作(Click, Type, GoTo, Extract 等),Agent 根据当前状态选择下一步 Action。
3. Custom Tools:支持注入自定义 Python 函数作为 Agent Tool,扩展其能力边界(如调用外部 API)。
4. Model Agnostic:通过 ChatBrowserUse 封装层,统一对接 OpenAI、Anthropic、Google 及自研的 bu-* 系列模型,后者针对浏览器任务进行了 Speed/Accuracy 优化。
作者
项目由 Magnus Müller (mamagnus00) 和 Gregor Žunič (gregpr07) 创立,团队位于苏黎世和旧金山。README 引用了他们的学术/工程背景但未详述过往具体项目履历,不过从项目的快速迭代(2024年10月发布至今 Star 破 11万)和完善的 Cloud/SaaS 商业化路径来看,这是一支具备极强工程落地能力和产品化思维的团队。
社区反应
数据表现极其强劲: - Stars: >110k,属于 GitHub 顶级热门项目。 - Forks: >12k,表明大量开发者在进行二次开发或集成。 - Issues: 383 open issues,相对于其体量而言控制良好,但考虑到高频迭代,社区讨论活跃。 - 生态: 作为 Python 库,它迅速成为 LangChain、CrewAI 等 Agent Frameworks 的首选 Browser Tool。其 Cloud API 的推出也吸引了大量非技术用户。
怎么上手
环境要求: Python >= 3.11, Node.js (用于 Playwright 依赖)。
最小复现步骤:
1. uv add browser-use (或 pip install)
2. 配置 .env:
bash
BROWSER_USE_API_KEY=your-key # 可选,若使用自带模型或代理
OPENAI_API_KEY=sk-... # 或使用其他 LLM Key
3. 运行代码:
```python
import asyncio
from browser_use import Agent, ChatBrowserUse
async def main(): agent = Agent( task="Find the number of stars of the browser-use repo", llm=ChatBrowserUse(model='openai/gpt-5.5'), ) await agent.run()
asyncio.run(main())
``
**CLI 集成**: 对于 Cursor/Claude Code 等本地 Agent,可直接粘贴 README 中的browser-use skill install` 指令进行一键配置。
争议与局限
- Token 成本与延迟: LLM 循环推理(Perceive -> Think -> Act)导致单次任务耗时较长,且 Token 消耗随页面复杂度线性增长。虽然官方优化了
bu-*模型,但相比传统脚本仍慢数个数量级(推断)。 - 反爬对抗: 开源版依赖本地浏览器,极易触发 Cloudflare/PerimeterX 等 WAF。解决 CAPTCHA 和指纹识别需依赖付费 Cloud API,形成了“开源引流、云端变现”的闭环(推断)。
- 稳定性: 基于 LLM 的非确定性输出意味着相同任务在不同时间可能产生不同结果,难以像传统脚本那样保证 100% 确定性(README 承认需配合 Cloud API 提高稳定性)。
相关项目
- OpenAI Computer Use — OpenAI 的视觉 Agent,直接操作屏幕像素而非 DOM,通用性更强但精度和速度目前落后于 Browser Use 的专用优化。
- Crawlee (by Apify) — 传统的 Web Scraping/自动化框架,基于 Playwright/Puppeteer,但缺乏 LLM Agent 能力,适合结构化数据提取而非复杂交互。
- LangChain Browser Tool — LangChain 生态中的浏览器集成组件,功能较基础,通常作为底层工具被 Browser Use 或类似框架调用。
- Dify / Coze — Low-code Agent 平台,内置了 Browser Use 等工具节点,侧重于工作流编排而非底层自动化引擎。
- Selenium IDE / Playwright Codegen — 录制回放式自动化工具,无 AI 决策能力,无法处理动态变化的 UI 逻辑。