# stagehand-python:AI浏览器自动化框架让网页操作更智能
传统的浏览器自动化需要编写大量选择器和等待逻辑,维护成本高。stagehand-python 是 Browserbase 公司开源的 AI 浏览器自动化框架,让人类用自然语言描述操作,AI 来完成所有底层工作。
## 项目介绍
stagehand-python 是 stagehand 项目的 Python 实现,核心理念是”告诉 AI 你想做什么,而不是怎么做”。开发者只需用自然语言描述操作步骤(如”点击登录按钮”、”填写用户名和密码”),框架会自动解析意图、识别页面元素、执行相应操作。
项目在 GitHub 上获得了开发者社群的广泛关注,适用于网页测试、数据采集、自动化办公等多种场景。
## 核心特色功能
**自然语言驱动**:无需编写复杂的选择器或等待逻辑,直接用自然语言描述操作:await page.act(“点击红色的提交按钮”)。
**多 AI 模型支持**:支持 OpenAI、Anthropic、Google Gemini 等多种大语言模型作为后端,可根据任务需求灵活切换。
**智能元素识别**:AI 自动分析页面 DOM 结构,找到与描述最匹配的元素,处理动态加载的页面元素。
**内置等待机制**:自动处理页面加载、元素可见、请求完成等等待条件,无需手动编写显式等待。
**DOM 感知**:能够在执行操作前分析页面结构,选择最优的操作路径。
**浏览器实例管理**:提供浏览器实例的创建、复用和销毁管理,支持 headless 和有界面两种模式。
## 安装步骤
“`bash
pip install stagehand-python
# 配置 API Key
export OPENAI_API_KEY=”sk-…”
# 或
export ANTHROPIC_API_KEY=”sk-ant-…”
“`
需要同时安装 Playwright 浏览器驱动:
“`bash
playwright install chromium
“`
## 使用方法
**基础示例**:
“`python
from stagehand import Stagehand
async def main():
async with Stagehand() as page:
await page.goto(“https://example.com”)
await page.act(“点击登录按钮”)
await page.act(“填写用户名: admin@example.com”)
await page.act(“填写密码: secretpass”)
await page.act(“点击提交按钮”)
# 获取页面内容
content = await page.get(“获取页面标题”)
print(content)
asyncio.run(main())
“`
**数据提取示例**:
“`python
from stagehand import Stagehand
async def scrape_products():
async with Stagehand() as page:
await page.goto(“https://shop.example.com”)
await page.act(“滚动到页面底部”)
# 用自然语言提取数据
products = await page.extract(
“提取所有产品名称和价格,返回 JSON 格式”
)
print(products)
“`
**搭配 Browserbase 云浏览器**:
“`python
from stagehand import Stagehand
from browserbase import Browserbase
bb = Browserbase(api_key=”…”)
browser = await bb.launch()
async with Stagehand(browser=browser) as page:
await page.goto(“https://example.com”)
await page.act(“完成注册表单填写”)
“`
## 适用场景
– 网页数据采集:自动化采集电商、新闻、社交媒体等网站数据
– 自动化测试:AI 驱动的端到端测试,减少测试用例维护工作
– RPA(机器人流程自动化):自动化处理重复性的网页操作
– 定时任务:配合定时任务自动执行网页操作,如签到、抢票等
– AI 智能体:作为 AI Agent 的工具之一,赋予 Agent 操作网页的能力
## 开源协议
项目采用开源协议(具体见 GitHub 仓库)。
项目主页:https://github.com/browserbase/stagehand-python
服务支持:如有兴趣不会搭建,可以联系微信:WRYD6166,开源项目搭建10-50元。








暂无评论内容