轻松实现浏览器自动化——AI浏览器自动化框架Stagehand

The AI Browser Automation Framework

项目简介

The AI Browser Automation Framework 是一个先进的浏览器自动化工具,它结合了自然语言处理和传统编程,让开发者能够高效、灵活地执行网页自动化任务。通过选择使用代码或自然语言,Stagehand使得在生产环境中进行浏览器自动化变得更加简单和高效。

为什么选择Stagehand?

在现有的浏览器自动化工具中,如Selenium、Playwright或Puppeteer,往往需要编写较低级的代码,或者使用高层代理,这在生产中可能会带来不可预测性。Stagehand则通过灵活的代码与自然语言的选择,为开发者提供了更便捷的自动化解决方案。

  1. 编程与自然语言的灵活选择:在面对陌生页面时,可以使用AI辅助导航,而当知道具体操作时,则可以直接使用代码。

  2. 动作预览与缓存:Stagehand允许你在运行之前预览AI动作,并支持缓存可重复的动作,从而节省时间和费用。

  3. 一行代码集成计算机使用模型:Stagehand提供了一行代码将先进的计算机使用模型与浏览器集成,简化了复杂操作的实现。

使用示例

下面是一个使用Stagehand构建浏览器自动化的示例:

typescript 复制代码
// 使用Playwright的功能在页面对象上
const page = stagehand.page;
await page.goto("https://github.com/browserbase");

// 使用act()执行单个动作
await page.act("click on the stagehand repo");

// 使用计算机使用代理处理较大操作
const agent = stagehand.agent({
    provider: "openai",
    model: "computer-use-preview",
});
await agent.execute("Get to the latest PR");

// 使用extract()从页面中读取数据
const { author, title } = await page.extract({
  instruction: "extract the author and title of the PR",
  schema: z.object({
    author: z.string().describe("The username of the PR author"),
    title: z.string().describe("The title of the PR"),
  }),
});

开始使用Stagehand

开始使用Stagehand只需一行代码,或者查看我们的快速入门指南获取更多信息:

bash 复制代码
npx create-browser-app

从源代码构建并运行

请按照以下步骤从源代码构建并运行Stagehand:

bash 复制代码
git clone https://github.com/browserbase/stagehand.git
cd stagehand
pnpm install
pnpm playwright install
pnpm run build
pnpm run example # 运行位于./examples/example.ts的空白脚本
pnpm run example 2048 # 运行./examples/2048.ts中的2048示例

Stagehand在您拥有LLM提供商的API密钥和Browserbase凭证时表现最佳。要将这些添加到您的项目中,请运行:

bash 复制代码
cp .env.example .env
nano .env # 编辑.env文件以添加API密钥

同类项目对比

在浏览器自动化领域,除了Stagehand,还有一些同类工具,如Selenium、Playwright和Puppeteer等。这些工具各有特点:

  • Selenium:一个支持多种编程语言的开源框架,能与不同浏览器配合使用,适用于自动化测试。
  • Playwright:由微软开发,提供强大的支持,允许多种浏览器的自动化,但通常需要更多的手动编写代码。
  • Puppeteer:主要为Chrome设计的Node库,允许控制Chrome浏览器,适合需要在浏览器中执行全栈测试的场景。

与这些工具相比,Stagehand通过自然语言与代码的灵活组合,提升了用户的操作效率与体验,是一个更加智能化的选择。

通过使用Stagehand,开发者不仅可以提升工作效率,还能大幅降低在复杂项目中可能面临的挑战。如果您在网页自动化需求中寻求更高效的解决方案,可尝试Stagehand,体验AI与编程的完美结合。

相关推荐
加宝的起点雷达2 分钟前
40 条候选里 38 条来自同一个源,主卡整屏重样
人工智能·算法·创业
紧跟先前的步伐6 分钟前
Go AI Agent 实战 28|Agent 的预算、超时与停止条件
开发语言·人工智能·后端·ai·golang
蓝星科学12 分钟前
AI Agent 说「已完成」,凭什么信——ChipCode 的证据链与产物门禁设计
人工智能
田里的水稻16 分钟前
FA_CNN卷积神经网络二十六---从全连接到卷积PyTorch
人工智能·pytorch·cnn
艺杯羹17 分钟前
MCP本地服务集成避坑:从Stdio管道僵死到双向JSON-RPC稳健通信
人工智能·python·ai·系统架构·大语言模型·ai编程·mcp
武子康32 分钟前
h3.c 的两个权重槽,怎样把内存压力换成 SSD 等待
c语言·人工智能·agent
大模型真好玩36 分钟前
豆包真人分身操作技巧:这次让我来做主演
人工智能·agent·deepseek
xyzzklk1 小时前
在Open-WebUI中提升向量化速度
网络·人工智能·爬虫·ai·语言模型·自然语言处理·安卓
QXWZ_IA1 小时前
矿山安全监测从感知到预警的全链路算法
人工智能·安全
分布式存储与RustFS1 小时前
给 RustFS 桶加一层内存缓存:用 Alluxio 让热数据少跑一遍网络
运维·云原生·开源·对象存储·分布式存储·s3·性能基准