Playwright MCP 和 Claude Computer Use 做浏览器自动化怎么选?我拿 3 个脏活跑了 72 小时,说点难听的

🔑 关键词:Playwright MCP,Claude Computer Use,浏览器自动化,AI Agent,WebArena

📖 摘要:对比 Playwright MCP 与 Claude Computer Use 在真实浏览器自动化任务中的速度、成本、成功率和权限边界,给出混合架构的 6 步落地方法。

先泼冷水:能跑一次和能跑五百次,是两回事

图片

上周二我在客户会议室,运营总监说想让我用 AI 自动把 12 个后台的日报导出来。我一开始也偷懒,直接上 Claude Computer Use,结果第 17 步它把日期筛选点成了 2024 年,整轮白跑。 后来我把任务拆开:登录、翻页、下载、校验,能用 Playwright 的绝不让模型点鼠标。 我用的环境:Mac mini M2 16GB、macOS 14.5、Node 20.11、Playwright 1.49.1、@playwright/mcp 0.0.10、Claude 3.5 Sonnet 的 computer-use-2024-10-22 beta。 结论先放这:Computer Use 适合当眼睛和兜底,Playwright MCP 适合当手。把两者对立起来,基本是做 demo 的思路。

三个脏活,我的小样本结果

图片

任务 A:国内某 SaaS 后台导出 CSV,有短信验证码、iframe、下载弹窗。Playwright MCP 先人工登录一次存 storageState,后面 20 次导出成功 19 次;Computer Use 从零跑 10 次成功 6 次,失败大多卡在验证码和弹窗。 任务 B:WebArena shopping 子集 50 条多步指令。Playwright MCP 加 accessibility snapshot,成功 43 条,平均 2.1 秒/步;Computer Use 成功 36 条,平均 6.4 秒/步。 任务 C:12 个政府/协会网站抓招标公告,要翻页、进详情、下 PDF。Playwright 选择器平均每站要改 3.7 次;Computer Use 在布局大改的站上反而能靠视觉找到入口,但会把附件下重。 注意,这不是论文,样本很小。但它足够说明:结构化后台别迷信视觉模型,长尾页面别硬写选择器。

图片

参数和成本:差的不只是 token

Playwright MCP 走 DOM/accessibility tree,一个页面通常只传 2k-8k tokens;Computer Use 每步截 1280x800 PNG,单图 200-400KB,15 步任务轻松到 30k-60k input tokens。 按 Claude 3.5 Sonnet 的 3 美元/百万输入、15 美元/百万输出粗算:Computer Use 跑一轮 15 步约 0.27 美元,Playwright MCP 约 0.03 美元,差 8 倍左右。 速度上,Playwright 稳定在 1.2-3.5 秒/步,Computer Use 常见 4-9 秒/步,遇到弹窗动画还要等 1.5 秒。 内存别忽略:M2 16GB 上开 3 个 browser context 很稳,开到 8 个开始 swap。并发不是越高越好,先跑 3,观察再加到 5。

图片

混合方案 6 步:我现在就这么干

图片

  1. 用 Playwright 打开目标站,人工登录一次,存 storageState: 'auth.json',设置 viewport 1440x900、deviceScaleFactor 1。
  2. 跑 @playwright/mcp --browser chromium --headless --isolated --viewport-size=1440,900,让模型只拿 accessibility snapshot,不拿整页截图。
  3. 让模型输出 JSON action,例如 {tool:'click', selector:'text=导出'},Playwright 执行;连续 2 次找不到元素才截全屏转 Computer Use。
  4. Computer Use 的系统提示写死:只操作当前页面,禁止点击包含购买、升级、删除、退款的按钮;所有写操作必须二次确认。
  5. 每步开 trace:context.tracing.start({screenshots:true, snapshots:true}),失败回放;下载监听 page.waitForEvent('download'),文件小于 10KB 判失败。
  6. 校验不靠模型嘴说:用 expect(page.locator('.export-success')).toBeVisible(),重试 2 次,退避 1.5s、3s、6s、12s。

我的独立观点:瓶颈在可恢复性,不在模型智商

图片

很多人讨论 Computer Use 和 Playwright MCP 谁替代谁,我觉得问错了。生产环境里的浏览器自动化,最贵的是失败之后怎么恢复,不是单步点多快。 WebArena 分数高,不代表能跑国内后台。验证码、短信、iframe、下载、文件重名、权限审批,这些脏活 benchmark 覆盖得很差,却是企业每天要面对的。 我的建议很土:80% 确定性流程写死 Playwright,20% 长尾交给 Computer Use;给 Agent 单独浏览器 profile,只给必要账号权限,生产写操作必须人工点最后一下。 别让 AI 自由点击生产后台。它不是不聪明,是你赔不起。

🏷️ 标签: