先泼冷水:能跑一次和能跑五百次,是两回事
上周二我在客户会议室,运营总监说想让我用 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 步:我现在就这么干
- 用 Playwright 打开目标站,人工登录一次,存
storageState: 'auth.json',设置 viewport 1440x900、deviceScaleFactor 1。 - 跑
@playwright/mcp --browser chromium --headless --isolated --viewport-size=1440,900,让模型只拿 accessibility snapshot,不拿整页截图。 - 让模型输出 JSON action,例如
{tool:'click', selector:'text=导出'},Playwright 执行;连续 2 次找不到元素才截全屏转 Computer Use。 - Computer Use 的系统提示写死:只操作当前页面,禁止点击包含购买、升级、删除、退款的按钮;所有写操作必须二次确认。
- 每步开 trace:
context.tracing.start({screenshots:true, snapshots:true}),失败回放;下载监听page.waitForEvent('download'),文件小于 10KB 判失败。 - 校验不靠模型嘴说:用
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 自由点击生产后台。它不是不聪明,是你赔不起。