浏览器住进了 Claude Code:agent 抓网页省掉一层,但我只敢先让它看

cover

Hello,我是飞飞。

Claude Code 桌面版偷偷塞进来一个浏览器。我头一个反应不是”哦又一个功能”,是”完了,这动到我那条天天在跑的抓网页老链路了”。你要是也天天拿 agent 抓网页、产内容,这功能大概率也动到你那条链路上了。

浏览器住进了 Claude Code

它到底是个啥,一句话:agent(你让 AI 替你跑活的那个助手)干活时能自己开网页看内容,不用你再给它接一套抓取工具。

以前想让 agent 读网页,你得自己搭。要么给它配 Playwright 这种浏览器自动化,要么挂个 MCP 服务(相当于在 agent 和网页之间架一个转接口)当中间层。这层东西不算难,可它像自行车链条,得天天上油,一天不管就掉链子。现在这层被官方收进桌面版里了。

这功能冲着什么来的,一眼能看穿。让 agent 能自己看网页,是它从”只会读你喂的文字”往”能自己去现场核对”迈的一大步。以前它写东西全靠你把料塞到嘴边,现在它能自己推门进去看一眼。你要是天天拿 agent 产内容,这一步对你就不小。它刚上,我还没拿它跑过一轮真活,所以”省不省得掉那层”我先不下结论。这篇真想跟你掰扯清的,是另一件我已经栽过跟头的事:能让它看,到底敢不敢让它动。

喂网页是我的日常

看到这条,心里咯噔一下,这活我天天在干。

我有个专门给写稿 agent 找料的抓取脚本,核心动作之一就是抓网页:先拿一个浏览器抓取工具(playwright-fetch)去取页面正文,取不到再退到一条把页面渲染成干净文本的兜底通道。这里头的坑不少:有的站直接按来访身份把爬虫挡在门外,有的挂了重重人机验证,硬闯经常空手回来,我才添了那条兜底的腿,闯不过去的站靠它接住大半。反复这么调,这条抓取链才在大部分站上不趴窝。

我优先给 Claude Code 装的三个 skill 里,也有一个 /browse,图的就是让它真去页面上看一眼,别凭想象。做站点优化那阵子天天盯爬虫周报,得让 agent 去页面确认它到底被抓成什么样:哪篇文章被 AI 爬虫抓了多少次、抓走的是正文还是一堆网页骨架。有天我扒着周报一行行往下数,前十条里七条是 JS、CSS 这些静态壳子,真正的文章孤零零挂一条。那一刻我才服气,agent 不亲眼去页面看一眼,根本不知道自己抓回来的到底是什么。抓回一堆壳子还当正文喂给写稿的 agent,产出的稿子准跟着踩空。浏览器对 agent 有多要紧,那次算是数进心里了。

所以”让 agent 能看网页”这件事我早就在干,是这条流水线绕不开的一环。

省掉的是自搭那层苦

省的到底是哪一截?就像以前抓网页得自己租台服务器架一层,后来平台把这层直接管了,我上面自己搭、自己半夜爬起来查的那一截,也该被官方兜住了。

具体省的是啥?以前 playwright-fetch 偶尔抽风、兜底那条腿偶尔限流,我都得停下手里的活,翻日志一行行倒推是哪一节松了,再手动补一段兜底逻辑。要是官方这个内置浏览器足够稳,这类碎活能少一截。

说少一截我是真盼着。这条流水线无人值守跑的时候,最烦的就是这种中间件半夜抽风:抓取失败了不报错,稿子就少一段料,隔天才发现。我另一条部署流水线就栽过这跟头,令牌过期了构建一路全绿,只有最后一步推送悄悄红了,静默挂了一整天,等我隔天点开一看才发现线上根本没更新。抓网页这层要是官方兜住了、稳了,我能少配一个”它又坏了”的告警。

这台”服务器”不用你自己租了,账官方替你担着。你要是重度用 agent,比多一个功能更值钱的,是少维护一层容易坏的中间件。

但省事的另一头,我心里也悬着一件事。

怕的就是它乱点

我担心的是,浏览器一旦住进 agent 手里,它能点的就不只是”看”了。

看网页是只读的,翻页、读正文,点错也没什么后果,页面刷新一下就回到原样。可浏览器里还有一堆按钮:提交表单、确认下单、点”删除”。agent 在页面上自己动起来之后,这些撤不回的动作离它就一步之遥。换成是你天天用的后台、你自己的账号页,agent 要在上面随手点几下,你大概也坐不住。

给 agent 放权,我守着一条土规矩:按”点错能不能收回来”分两块。读得到查得到的活,拉日志、算数、找异常、只读巡检,现在就敢全交;会改线上状态、碰凭证、会发出去的活,缰绳勒紧,宁可它停下问我一句。

改代码我敢让它跑,靠的是每件事都落在 git diff 里,改了哪行都看得见、也回得去,可”合进主分支”那一下必须我自己过手才点。

运维那边更薄,改了什么没有一份逐行的改动清单能翻,也没有一键撤回。我就吃过一次亏:手一滑,把一条域名解析的指向改错了,当时没觉出什么,几分钟后站直接打不开。改回去倒不难,可解析生效得慢慢等,那几分钟我盯着一直打不开的站,只能干瞪眼。那次栽的根子就一条:不可逆的操作,太早交给了还会犯浑的 agent。

浏览器把 agent 的手伸到真实网页上,能点删除、能提交表单,等于又给它开了一扇能”动”的门。这条线放到浏览器上该怎么划,就卡在一处:点下去那一刻能不能反悔。看,随时能重来;点一下,很多时候只有一次,撤不回。

所以让它开个页面读正文、翻两页核对个数据、看看我的站在它眼里被渲染成什么样,这些”看”的活我现在就敢交给它,看岔了大不了我重读一遍,页面还在那儿,什么都没被它动过。

可页面上一旦冒出”提交””确认下单””删除账号”这类按钮,我就得自己坐到屏幕跟前,宁可一个个手动点,也不敢让它替我按下去。偏偏网页这头既没有 git diff 给你回看,也没有草稿箱兜一道,它手一滑点下去,就是真提交、真删除。

撤不回的先攥住

往大了看,浏览器住进 agent 手里是个信号:它能自己动的地方,只会越来越多。可门开得越大,我头一节说的那条线就越得攥住。

技术往前冲,我的手反而要往回收一收,先让它把”看”这件事干熟,”动”的事再慢慢谈。

我最想验的就两件事:它抓取稳不稳、成功率比我那套自搭的土办法高多少。手头那几个常年硬闯不进去的站,正好拿它挨个试一遍。要是真能少配一个告警、少让我半夜爬起来查一次,我立马把老链路换过去,回头再来跟你摆效果。

想问问你:你会放心让 agent 在浏览器里自己点吗,还是跟我一样,只敢让它”看”、不敢让它”动”?评论区聊聊。