browser-use 上手:5行代码跑通一个AI浏览器自动化任务
【免费下载链接】browser-use🌐 Make websites accessible for AI agents. Automate tasks online with ease.项目地址: https://gitcode.com/GitHub_Trending/br/browser-use
browser-use 是一个 Python 网页自动化库:你用自然语言描述任务,它驱动真实浏览器打开页面、点击按钮、填写表单并返回结果。本文以"自动填表并提交"为例,带你把第一个 AI 浏览器自动化任务完整跑通,并让结果能被下游代码直接使用。
1. 🚀 先跑起来:一行安装与密钥配置
环境要求 Python >= 3.11,安装只需一行:
pip install browser-use大模型可以自带,OpenAI、Google、Anthropic 的 key 都能接。想要最省心,可以用官方针对浏览器任务调优的 bu-* 系列模型,只配一个密钥即可:
export BROWSER_USE_API_KEY="your-key"到这一步环境就绪,不需要自己部署浏览器,也不需要写一行 Selenium。
2. 🧩 跑通任务:让 AI 填表并提交
整个任务用一句话描述,Agent 会自己规划并执行每一步:
import asyncio from browser_use import Agent, ChatBrowserUse async def main(): agent = Agent( task="打开 httpbin.org/forms/post,在联系表单填入姓名 John Doe、邮箱 john@example.com,然后提交", llm=ChatBrowserUse(model='bu-2-0-mini-preview'), ) await agent.run(max_steps=25) asyncio.run(main())运行后可以看到浏览器在后台打开、逐个定位输入框、填入值并点击提交。调度逻辑在 browser_use/agent/service.py,浏览器侧走 CDP 协议接入,配套组件在 browser_use/browser/watchdogs/,排障时知道去哪儿找会快很多。
3. 📐 让结果可被代码使用:结构化输出
默认的结束结果是一段字符串。想把它交给后续逻辑,就定义一个 Pydantic 模型传进去:
from pydantic import BaseModel class Result(BaseModel): status: str response: str agent = Agent(task=task, llm=llm, output_schema=Result)Agent 会在结束时按这个 schema 校验输出,你拿到的是一个已验证的Result实例,而不是要自己解析和清洗的文本。
4. ⚙️ 控制任务:步数上限、视觉与无头模式
三个参数直接影响成本与稳定性:
max_steps:步数预算,官方示例里用 25 起步,卡住的 Agent 会在耗尽后停止,避免无限循环烧 token;use_vision:默认每步截图判断页面状态,纯文本页面可设为False,省成本也更快;headless:BrowserSession(headless=True)静默运行,调试时改成False能实时看着浏览器操作。
模型怎么挑,可以对照官方的基准测试图:
官方宣称 bu-* 系列在浏览器任务上比通用模型快 3~5 倍,以实际环境为准;日常任务先用 gemini-flash 这类便宜模型验证流程即可。
5. 🐞 任务失败时看这里:调试与避坑
- 先用
headless=False跑一次,肉眼确认它卡在哪一步;配合环境变量BROWSER_USE_LOGGING_LEVEL=info打开详细日志; - 涉及登录态的页面,账号密码通过
sensitive_data参数传入,让 Agent 自行在对应输入框填写,不要直接写进任务文本; - 元素识别不到,常见原因是页面没加载完或目标在 iframe 里,先延长等待,再回步骤日志核对;
- examples/getting_started/ 目录按难度排了可运行的样例,填表脚本就是 02_form_filling.py,改个 URL 就能复用。
6. 📊 从填表到业务场景:能力边界与进阶
填表只是入口,仓库里还有可直接运行的样例应用。比如 ad-use 会先访问落地页并截图,再提取品牌卖点交给多模态模型生成广告图:
单机开源版跑通之后,如果需要大批量并行、隐身浏览器或验证码处理,再考虑官方云托管 Agent:
| 形态 | 运行位置 | 适用场景 |
|---|---|---|
| 开源 Agent | 你自己机器 | 一次性任务、自选 LLM、嵌入自有产品 |
| 云托管 Agent | 官方云端 | 大规模并行、代理轮换、验证码处理 |
下一步建议:先把 getting started 里的几个样例任务按顺序跑一遍,再换成你真实的页面,确认稳定后再加结构化输出接下游流程。
【免费下载链接】browser-use🌐 Make websites accessible for AI agents. Automate tasks online with ease.项目地址: https://gitcode.com/GitHub_Trending/br/browser-use
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考