
选择器一改就崩用 Stagehand 一句自然语言驱动浏览器【免费下载链接】stagehandThe SDK For Browser Agents项目地址: https://gitcode.com/GitHub_Trending/stag/stagehand维护一份 Playwright 脚本的人都有过这种体验页面改版换个 class 名脚本就崩三处。Stagehand 是 Browserbase 开源的浏览器代理 SDKThe SDK For Browser Agents它让你用自然语言描述点哪个按钮抓哪段信息由 AI 理解页面结构并自动执行网站变了它还能自愈。它解决了什么问题传统自动化工具的定位逻辑是人写死选择器div.menu ul li:nth-child(3) a页面一重构就得改代码非技术同事更没法参与维护。Stagehand 的思路相反——把页面交给 LLM 理解你只说点击 Evals 按钮它自己找元素网站结构变了它会检测到并自动刷新执行方式这就是官方的 self-healing actions。架构上它把驱动逻辑做成浏览器扩展贴在页面旁边跑走 CDP 低延迟通道所以比远程截图 模型看图的方案快得多。图Stagehand 演示页面输入一句自然语言即可驱动浏览器执行任务 第一次跑起来你刚装好环境按 v4 文档的顺序走三步就能跑通。创建项目mkdir my-stagehand-app cd my-stagehand-app pnpm init -y pnpm add browserbasehq/stagehand zod配好密钥至少需要一个 Browserbase 的浏览器会话 key不配模型 key 时 Model Gateway 会自动选模型想用自己的 LLM 再补一个export BROWSERBASE_API_KEYyour_api_key跑通示例写个最小脚本index.tsconst browser await browserbase.launch({ apiKey: process.env.BROWSERBASE_API_KEY }); const stagehand await Stagehand.create({ browser }); const [page] await browser.context.pages(); await page.goto(https://stagehand.dev); await stagehand.act(Click the Evals button.);node index.ts跑完页面上那个按钮就真的被点掉了。图示例脚本在本地终端运行浏览器被自动化接管并打开文档页面四个能干活的能力act让浏览器替你点一句指令完成点击、输入、滚动等操作。await stagehand.act(Click the Evals button.)适合流程固定但页面结构不稳的场景。observe先看看页面上能干什么返回当前页面里所有符合描述的交互元素及其选择器const { data: actions } await stagehand.observe(What can I click on this page?)。拿到选择器后你可以切回确定性的 locator 操作AI 只负责定位。extract把页面变成结构化数据配一个 zod schema只回你要的字段不用自己写 DOM 遍历const { data: pr } await stagehand.extract( extract the title of the PR, z.object({ title: z.string() }));这也是替代选择器 正则拼数据最直接的用法。WebMCP直接调用页面暴露的工具有些页面把自己的能力注册成了工具await page.tools()拿到后直接invoke调用。比如结算流程本来要点六下现在一次带类型的调用就完成省掉了中间所有 UI 操作。图同一个提取公司名和批次号的任务Stagehand 侧只要一句 extract 指令Playwright 侧要写整段 DOM 遍历什么时候用它、什么时候别用适合目标页面频繁改版、选择器老是失效的抓取任务表单填写和多步骤业务流程需要给 AI Agent 提供浏览器操作能力同一段自动化要同时在 TypeScript、Python、Go 里跑三套 SDK 行为一致。不太适合对延迟敏感的 CI 流水线——自然语言动作每次都有模型推理开销需要像素级精确断言的 UI 回归测试以及单次调用 token 成本敏感、且页面完全稳定的场景那种情况传统选择器反而更省。 往下走快速入门文档从零到跑通 act / extract / observeStagehand 方法 API 参考每个方法的完整签名TypeScript 示例目录act、batch、caching、fileUpload 都能直接抄项目迭代很快docs 里现在并存 v2、v3、v4 三套文档API 有差异看代码前先确认版本。选择器一改就崩的日子可以过去了页面交给 Stagehand 的理解能力你只维护那句自然语言。下一步可以拿你手边那个最容易挂的爬虫脚本试试——把里面最长的那串选择器换成一句extract(...)然后观察它下次改版时还挂不挂。【免费下载链接】stagehandThe SDK For Browser Agents项目地址: https://gitcode.com/GitHub_Trending/stag/stagehand创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考