Skip to content

browser-use 使用指南:七类浏览器自动化任务 ​

修订于 2026-10-12:原文中的 Star 数、作者亲测经历、成功率与未经核实的旧接口示例已删除。项目 API 更新较快,请以文末官方文档为准。

browser-use 将浏览器操作交给模型驱动的 Agent:开发者描述目标,Agent 根据页面状态选择动作。它适合页面流程变化较多、人工定义每一步成本较高的任务;对固定页面、高频和严格可重复的流程,传统浏览器脚本通常更容易测试与控制。

七类适用任务 ​

  1. 页面信息整理:打开公开页面,提取标题、日期和链接,再由程序校验字段。
  2. 多步站内查询:按关键词搜索、筛选并汇总结果,记录实际访问的网址。
  3. 表单草稿填写:预填内容并停在提交前,由人核对收件人、金额和字段。
  4. 后台巡检:浏览管理页面,发现错误提示或状态变化;告警仍需明确的规则与去重。
  5. 跨页面比对:从多个页面收集同一对象的信息,注明来源与抓取时间。
  6. 可访问性检查辅助:走通关键页面,记录无法点击或无法读出的控件;正式验收还需专门工具与人工检查。
  7. 一次性流程探索:先让 Agent 探索页面路径,再把稳定步骤固化为可重复的脚本。

这七类是任务设计建议,并非本站逐项完成的运行报告。涉及登录、付款、发布或个人数据时,应限制可访问站点和动作范围,并在关键提交前安排人工核对。

最小示例 ​

以下代码结构来自项目官方入门文档。依赖、模型名称和参数可能变化,运行前应按当前文档确认:

python
import asyncio
from browser_use import Agent, ChatOpenAI
from dotenv import load_dotenv

load_dotenv()

async def main():
    llm = ChatOpenAI(model="gpt-5.6-luna", reasoning_effort="xhigh")
    agent = Agent(
        task="打开 browser-use 项目主页,返回页面标题和网址",
        llm=llm,
    )
    history = await agent.run()
    print(history.final_result())

if __name__ == "__main__":
    asyncio.run(main())

官方文档当前提供 uv add browser-use 安装方式,并使用环境变量提供模型 API 密钥。示例只说明如何启动 Agent;它不保证目标页面可以访问,也不等于对返回内容做了校验。不要把密钥写进代码或日志。

上线前检查 ​

  • 结果验证:结构化提取后校验字段类型、来源网址和时间;对空值或页面变化设人工复核。
  • 权限边界:使用最小权限账号和独立浏览器配置,避免复用个人浏览器的所有登录状态。
  • 成本与时延:记录每次任务的模型调用、浏览器时长和失败率,在目标页面实际测量。
  • 稳定性:对验证码、登录过期、弹窗、分页与页面改版分别设计处理路径。
  • 外部动作:付款、发消息、发布内容等操作在提交前检查具体对象和内容。
  • 站点规则:遵守目标网站的使用规则,不以自动化绕过访问限制。

参考资料 ​

梧桐和风 · 让复杂的技术讲得更清楚