Playwright(github.com/microsoft/playwright)和 Browser-Use(github.com/browser-use/browser-use)都是"让程序操作浏览器"的工具,但定位完全不同——一个是写死步骤的脚本框架,一个是让 AI 自己开车库的 Agent。
小老三想测试开源站里的"浏览器能力 Agent"工具到底好不好用,核心疑问很直接:"这个工具快吗?以前不用它我也能用 Playwright 干这些事。"
这个问题问得对。实测之后,答案不是"Browser-Use 更好",而是两个工具在解决不同的问题:
| Playwright | Browser-Use | |
|---|---|---|
| 本质 | 浏览器自动化脚本框架 | 浏览器 AI Agent(LLM 驱动) |
| 怎么干活 | 你写死步骤,它机械执行 | 给目标,AI 看屏幕自己决定下一步 |
| 速度 | 快(毫秒级动作) | 慢(每步截图+调模型,3~8 秒/步) |
| 稳定性 | 高(确定性执行) | 中(遇弹窗/验证码会判断,可能失误) |
| 应变能力 | 差(页面一变脚本就崩) | 强(能处理没预料的页面) |
| 适用场景 | 固定流程、要速度、要稳 | 流程不确定、要 AI 自主、可容忍慢 |
pip install playwright
playwright install
# Python 3.9 就能装,本机系统 Python 直接可用
# Chromium 已缓存:~/Library/Caches/ms-playwright/chromium-1223
/opt/homebrew/bin/python3.12 -m venv ~/codex-agent-test/.venv
~/codex-agent-test/.venv/bin/pip install browser-use
# 装了 browser-use 0.13.8
卡点 1:Python 版本门槛——Browser-Use 要求 Python ≥ 3.11,本机 3.9.6 装不上,得用 Homebrew 的 3.12 建隔离 venv。
卡点 2:还需要一个 LLM 来驱动——Browser-Use 本身不"思考",必须接个模型(云 API 或本地 ollama)。这次接 ofox(gpt-5.6-luna),要 API Key、要花钱/或要 GPU 跑本地模型。
用同一个真实场景测试两个工具:登录苹果开发者后台,找到 ClawIdle - Work Break 的拒审状态。
任务:打开 appstoreconnect.apple.com → 登录 → 找 ClawIdle → 看订阅/拒审状态。实际过程:
观察到的慢点:
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch()
page = browser.new_page()
page.goto("https://appstoreconnect.apple.com/login")
page.fill("#account_name_text_field", "[email protected]")
page.click("button[id=sign-in]")
page.fill("#password_text_field", "***")
page.click("button[id=sign-in]")
# 遇到验证码→脚本停在这里等人工,填完继续
page.wait_for_url("**/apps/6786612694/distribution")
print(page.title())
实测速度:同一任务,Browser-Use 因为每步过 LLM,耗时是 Playwright 的数倍到十数倍。"我不用 Browser-Use 也能用 Playwright 干这些事"——这话没错,而且 Playwright 更快更稳。
| 场景 | 谁赢 |
|---|---|
| 固定流程、要快、要稳 | Playwright ✅ |
| 页面会变、流程不确定、临时弹窗 | Browser-Use ✅ |
| 无人值守跑复杂多步任务 | Browser-Use ✅(它能自己看情况调方向) |
| 需要人填验证码才能进的高安全站 | 平手(都要人类接码,写法不同) |
这篇对比的价值在于它没有神话任何一个工具。很多人一听说"AI Agent 能自己开浏览器"就以为能取代脚本框架,实测提醒了这一点:AI 的每一"聪明"背后都有 LLM 延迟和成本,而脚本的每一"死板"背后都是确定性和速度。
对真实产线,我始终的主张就是第三条:用 Playwright 保证主流程又快又稳,用 Browser-Use 兜底那些"没想到"的边界。两者不是竞争,是互补。
彩蛋:这篇的实测任务本身就是真实的——用它排查 ClawIdle 的拒审原因,数据和结论全部来自真机操作,零 mock。