Web自动化:Browser Use+Playwright驱动AI Agent

部署运行你感兴趣的模型镜像

📝 面试求职: 「面试试题小程序」 ,内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试,命中率杠杠的。(大家刷起来…)

📝 职场经验干货:

软件测试工程师简历上如何编写个人信息(一周8个面试)

软件测试工程师简历上如何编写专业技能(一周8个面试)

软件测试工程师简历上如何编写项目经验(一周8个面试)

软件测试工程师简历上如何编写个人荣誉(一周8个面试)

软件测试行情分享(这些都不了解就别贸然冲了.)

软件测试面试重点,搞清楚这些轻松拿到年薪30W+

软件测试面试刷题小程序免费使用(永久使用)


Browser Use是一个开源项目官网:Browser Use - Enable AI to control your browser,专为大语言模型(LLM)设计的智能浏览器工具,能够让AI像人类一样自然的浏览和操作网页,支持多标签页管理,视觉识别,内容提取,并能记录和重复执行特定动作。

01 Browser Use 的技术原理

  • 集成 LLM 模型:集成大型语言模型(LLM)理解和执行复杂的网页任务。

  • 浏览器自动化:用自动化工具如 Playwright,模拟人类用户的浏览器操作。

  • 异步编程:支持异步编程,让 AI 代理能非阻塞地执行网络请求和浏览器操作。

  • 自定义动作注册:支持开发者用装饰器或 Pydantic 模型注册自定义动作,扩展 AI 代理的功能。

  • 上下文管理:基于浏览器上下文(Browser Context)管理不同代理的独立会话,保持状态隔离。

  • XPath 和元素定位:用 XPath 和其他方法定位网页元素,实现精确的网页交互。

02 Playwright是什么

playwright是由微软开发的Web UI自动化测试工具,支持多种语言如Python,js,Java,其核心特性如下:

  • 跨浏览器兼容性:支持Chromium、Firefox和WebKit。

  • 灵活的运行模式:提供无头模式和有头模式,便于调试与持续集成。

  • 智能的等待机制:减少了显式等待的必要性。

  • 全面的API支持:能处理页面交互、网络请求以及文件上传下载等复杂操作。

03 快速开始

Browser-use 需要 Python 3.11 或更高版本。首先,通过 pip 安装该工具:

image.png

接下来,安装 Playwright,这是 Browser-use 的依赖项:

image.png

还需要调用大语言模型的第三方库

image.png

本地环境增加.env文件用于保存大模型的KEY放到环境变量中,保证隐私

7730e016-d599-41d2-9e12-551c782c206c.png

04 WebUI自动化demo

image.png

提示词总结

Browser Use中定义了提示词类,详情请看site-packages/browser_use/agent/system_prompt.md文件,该文件中有详细的系统提示词要求,比如给AI设定了身份,告知AI需要做什么,以什么格式返回。

输入格式以及内容

输入内容包括:

-任务

-之前的步骤

-当前网址

-打开的标签页

-交互元素

-[index]文本

  • 索引:用于交互的数字标识符

  • 类型:HTML元素类型(按钮、输入框等)

  • 文本:元素描述 示例: [33]提交表单

  • 带[]数字索引的元素是可交互的

  • 无[]的元素仅提供上下文

05 响应规则

响应格式:必须始终以有效JSON格式响应,格式如下: {"current_state": {"evaluation_previous_goal": "成功|失败|未知 - 分析当前元素和图片,检查之前的目标/动作是否按预期完成。说明是否出现意外情况", "memory": "描述已完成事项和需要记住的内容。必须具体说明操作次数和剩余数量。

例如:已分析0/10个网站。继续处理abc和xyz", "next_goal": "下一步需要立即完成的目标描述"}, "action":[{"one_action_name": {//动作参数}}]}

动作规则:

可指定多个连续动作

每个动作只能包含一个动作名称

最多使用{{max_actions}}个动作 常见动作序列:

表单填写:[{"input_text": {"index": 1, "text": "用户名"}}, {"input_text": {"index": 2, "text": "密码"}}, {"click_element": {"index": 3}}]

导航与提取:[{"go_to_url": {"url": "Example Domain"}}, {"extract_content": {"goal": "提取姓名"}}]

动作按顺序执行

页面状态变化后中断序列

仅在动作不改变页面时使用多动作

优先使用高效动作(如批量填写表单)

元素交互:

仅使用交互元素的索引

标记为"[]非交互文本"的元素不可操作

导航与错误处理:

无合适元素时使用替代功能

卡顿时尝试:

返回上一页

新建搜索

新开标签页

处理弹窗/cookie:接受或关闭

使用滚动查找目标元素

重新搜索时打开新标签页

出现验证码时尝试解决

页面未加载完成时使用等待动作

任务完成:

任务完全达成时使用done动作

达到max_steps限制时也需调用done:

成功完成所有要求设success为true

未完成则设success为false

对重复任务(如"每个"、"所有"):

在memory中持续计数(已完成X次,剩余Y次)

仅在完成全部次数后使用done

视觉上下文:

使用图片理解页面布局

图片中的带标签边界框对应元素索引

表单填写:

填写输入框后若序列中断

可能出现自动建议/弹窗

长任务:

在memory中持续追踪状态和子结果

内容提取:

寻找信息时对特定页面调用extract_content

响应必须始终为符合格式的JSON

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​

您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值