当前位置: 首页 > article >正文

【browser-use+deepseek】实现简单的web-ui自动化

browser-use Web-UI

一、browser-use是什么

Browser Use 是一款开源Python库,专为大语言模型设计的智能浏览器工具,目的是让 AI 能够像人类一样自然地浏览和操作网页。它支持多标签页管理、视觉识别、内容提取,并能记录和重复执行特定动作。Browser Use 还支持开发者自定义动作,如保存数据到数据库,文件等。支持多种主流的大型语言模型,如 DeepSeek,GPT-4 和 Claude等,并支持同时运行多个任务,具备自我修正功能,从而提高任务执行的准确性和效率。
官网:https://browser-use.com/
项目网址 :https://github.com/browser-use/browser-use
Browser-use采用的技术栈为:

  • 1、Observation:页面解析层,采用DOM解析+截图辅助的非视觉+视觉方案。
  • DOM解析(HTML + XPath):Browser-use通过底层框架(如Playwright)获取当前页面的完整HTML结构,并提取文本、元素属性等关键信息。
  • 截图辅助:在某些情况下(如验证码识别、动态图形验证),纯HTML解析可能无法直接获取信息,此时系统会自动或按需生成页面截图,并将截图作为辅助输入传递给视觉模型
  • 2、Thought:核心决策层,分析Observation提供的页面信息并生成操作指令。
  • 3、Action:指令执行层,微软开发的Playwright作为浏览器控制框架直接与浏览器交互完成自动化任务。Playwright作为新一代高性能UI自动化测试框架,提供低延迟、高稳定性的浏览器控制能力,支持快速页面加载和元素操作。

二、browser-use webui 主要功能

提供了全新的网页界面,简单好用,方便操作。
支持更多大语言模型,比如 Gemini、OpenAI、Azure 等,哦,还有最近爆火的国产大模型 DeepSeek,未来还会加更多。
支持用自己的浏览器,不用再反复登录,还能录屏。
定制了更智能的 Agent,通过优化后的提示让浏览器使用更高效。
使用场景

  • 自动化任务:适合重复高频的浏览器操作任务,如表单填写,信息检索,文件下载
  • 数据收集:适合爬取网络上的数据,如爬虫自动化测试:适合WEB UI
  • 自动化测试,结合pytest轻松实现web自动化

简介:Browser Use 是一款开源Python库,专为大语言模型设计的智能浏览器工具。
目的:让 AI 能够像人类一样自然地浏览和操作网页。它支持多标签页管理、视觉识别、内容提取,并能记录和重复执行特定动作。
支持:支持多种主流的大型语言模型,如 DeepSeek,GPT-4 和 Claude等,并支持同时运行多个任务,具备自我修正功能,从而提高任务执行的准确性和效率。
应用场景:该项目可以部署在本地,也可以部署在线上。可以整理固定的文案,run agent 之后,可用于员工培训,可用于新员工入职,展示业务主要功能。

(一)下载与安装

一、下载项目克隆仓库

git clone https://github.com/browser-use/web-ui.git

在这里插入图片描述

二、进入项目

cd web-ui

在这里插入图片描述

三、设置python虚拟环境

1、安装 uv(高性能虚拟环境工具)

pip install uv

在这里插入图片描述

2、创建虚拟环境

uv venv --python 3.11  # 确保 Python 3.11+ 已安装

在这里插入图片描述

3、激活虚拟环境

source .venv/Scripts/activate

在这里插入图片描述

四、安装依赖

uv pip install -r requirements.txt

在这里插入图片描述

五、安装chrom浏览器的依赖

playwright install --with-deps chromium

在这里插入图片描述
或者所有浏览器的依赖

playwright install

六、配置环境变量

cp .env.example .env  

(图里发错图了,少了个v ,说明:将env.example复制一份命名为env,然后到第八步,配置env文件)
在这里插入图片描述

七、查看Chrome详情

谷歌浏览器地址输入,即可查看:

chrome://version/

在这里插入图片描述

八、配置env文件

(记事本打开就可以)
在这里插入图片描述

备注:deepseek的api获取:

https://platform.deepseek.com/api_keys

需要充钱才可以用

九、运行web-ui

python webui.py --ip 127.0.0.1 --port 7788

在这里插入图片描述

十、运行方式,可通过git或者pycharm

在这里插入图片描述
在这里插入图片描述
1、开启虚拟环境:source .venv/Scripts/activate
2、输入启动命令:python webui.py --ip 127.0.0.1 --port 7788

(二)使用

一、登录平台

输入地址:127.0.0.1:7788
在这里插入图片描述

127.0.0.1:7788

二、关于浏览器的一些设置

在这里插入图片描述
在这里插入图片描述

三、运行,界面Demo 演示

输入要执行的任务就可以点击 Run Agent 了
在这里插入图片描述

相关文章:

【browser-use+deepseek】实现简单的web-ui自动化

browser-use Web-UI 一、browser-use是什么 Browser Use 是一款开源Python库,专为大语言模型设计的智能浏览器工具,目的是让 AI 能够像人类一样自然地浏览和操作网页。它支持多标签页管理、视觉识别、内容提取,并能记录和重复执行特定动作。…...

django数据迁移操作受阻

错误信息: django.db.utils.OperationalError: (1227, Access denied; you need (at least one of) the SYSTEM_VARIABLES_ADMIN or SESSION_VARIABLES_ADMIN privilege(s) for this operation)根据错误信息分析,该问题是由于MySQL用户 缺乏SYSTEM_VARI…...

MOS管的发热原因和解决办法

发热来源 如上图,MOS管的工作状态有4种情况,分别是开通过程,导通过程,关断过程和截止过程。 导致发热的损耗主要有两种:开关损耗、导通损耗。 导通损耗 导通损耗比较好计算,根据驱动电压VGS值可以得到MOS…...

4月11日随笔

本来以为大风会很厉害,本来今天早八的微积分不想去了。但是起床发现并没有很大的风,还是去了。 中午回来的路上突然变天,雷阵雨转冰雹。下了大概半小时,所幸挨淋的不是很严重。 中午打了首胜,AI的基本弄完了&#xf…...

科技项目验收测试怎么做?验收测试报告如何获取?

科技项目从研发到上市需要一个很长的周期,并且在上市之前还有一个至关重要的交付过程,那就是项目验收,验收需要通过验收测试来呈现。科技项目验收测试是确保项目成功交付的关键步骤,那么是如何进行的呢?企事业单位想要获取科技项…...

Java面试黄金宝典45

1. 非对称加密 RSA 定义:RSA 是一种广泛使用的非对称加密算法,其安全性基于大整数分解的困难性。它使用一对密钥,即公钥和私钥。公钥可公开用于加密消息,而私钥必须保密,用于解密由相应公钥加密的消息。要点: 公钥公开,私钥保密,二者成对出现。加密和解密使用不同的密钥…...

计算机网络学习前言

前言 该部分说明计算机网络是什么?它有什么作用和功能?值不值得我们去学习?我们该如何学习?这几个部分去大概介绍计算机网络这门课程,往后会介绍计算机网络的具体知识点。 1.计算机网络是什么? 计算机网…...

Vuex 源码

以下是关于 Vuex 源码 的系统梳理: 一、Vuex 核心架构设计 1. 整体架构分层 #mermaid-svg-Eqqp2jldNkQwvgcr {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Eqqp2jldNkQwvgcr .error-icon{fill:#552222;}#mermaid…...

AutoEval:现实世界中通才机器人操作策略的自主评估

25年3月来自 UC Berkeley 和 Nvidia 的论文“AutoEval: Autonomous Evaluation of Generalist Robot Manipulation Policies in the Real World”。 可规模化且可复现的策略评估一直是机器人学习领域长期存在的挑战。评估对于评估进展和构建更优策略至关重要,但在现…...

IP组播技术与internet

1.MAC地址分为三类:广播地址;组播地址;单播地址 2.由一个源向一组主机发送信息的传输方式称为组播。 3.组播MAC地址,第一个字节的最后一位为1; 单播MAC地址,第一个字节的最后一位为0; 4.不能…...

基于SSM框架的房屋租赁小程序开发与实现

概述 一个基于SSM框架开发的微信小程序房屋租赁管理系统,该项目实现了用户管理、中介管理、房源信息管理等核心功能。 主要内容 一、管理员模块功能实现 ​​用户管理​​ 管理员可对通过微信小程序注册的用户信息进行修改和删除操作,确保用户数据的准…...

oracle 表空间(Tablespace)

在 Oracle 11g 中,表空间(Tablespace) 是数据库存储架构的核心逻辑单元,其原理基于 逻辑存储与物理存储的分离,通过分层管理数据文件、段(Segment)、区(Extent)和数据块&…...

基于YOLOv8的机场跑道异物检测识别系统:提升航空安全的新一代解决方案(主页有源码)

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​ ​​​​​​​​​ ​​ 1. 机场跑道异物检测领域概述 机场跑道异物(Foreign Object Debris, FOD)是指存在于机场跑道、滑行道等关…...

23种设计模式生活化场景,帮助理解

以下是 23种设计模式的生活化场景 及其核心对比,通过日常例子和比喻帮助理解它们的本质区别和应用场景: 创建型模式(5种) 1. 工厂方法(Factory Method) • 场景:快餐店的点餐系统。 • 问题&a…...

Android学习总结之OKHttp拦截器和缓存

深入理解 OkHttp 拦截器 1. 拦截器接口详解 Interceptor 接口是自定义拦截器的基础,它仅包含一个抽象方法 intercept。以下是对该方法参数和返回值的详细解释: import okhttp3.Interceptor; import okhttp3.Request; import okhttp3.Response; import…...

Wincc管对象的使用

Wincc管对象的使用 管对象的调用多边形管T形管双T形管管弯头管道大小调整 管对象的调用 打开【图形编辑器】 多边形管 多边形管如下: 一根管子的顶点数是两个,如果修改顶点数,管子就有多少个端点。 修改顶点数为5 此时点击端点然后拖动&#…...

Linux-----驱动

一、内核驱动与启动流程 1. Linux内核驱动 Nor Flash: 可线性访问,有专门的数据及地址总线(与内存访问方式相同)。 Nand Flash: 不可线性访问,访问需要控制逻辑(软件)。 2. Linux启动流程 ARM架构: IRAM…...

GHG认证是什么,GHG认证的意义?对企业发展好处

GHG认证(温室气体认证)详解 GHG认证(Greenhouse Gas Certification,温室气体认证)是指对组织、产品或项目的温室气体(GHG)排放量进行科学量化、报告,并由第三方机构进行独立核查和认…...

Docker 常用命令指南

Docker 提供了丰富的命令行工具来管理镜像、容器、网络和数据卷等资源。本指南按类别整理 Docker 的常用命令,并为每个命令提供简体中文说明和示例,以帮助您快速查询和掌握日常使用。 1. 镜像管理 Docker 镜像(Image)是打包好的应用程序及其依赖环境,可用于创建容器。常用…...

问问lua怎么写DeepSeek,,,,,

很坦白说,这十年,我几乎没办法从互联网找到这个这样的代码,互联网引擎找不到,我也没有很大的“追求”要传承,或者要宣传什么;直到DeepSeek的出现 兄弟,Deepseek现在已经比你更了解你楼下的超市…...

基于神经环路的神经调控可增强遗忘型轻度认知障碍患者的延迟回忆能力

简要总结 这篇文章提出了一种名为CcSi-MHAHGEL的框架,用于基于多站点、多图谱fMRI的功能连接网络(FCN)分析,以辅助自闭症谱系障碍(ASD)的识别。该框架通过多视图超边感知的超图嵌入学习方法,整合…...

C++学习之ORACLE③

1.集合运算符 查询部门号是10和20的员工信息: ?思考有几种方式解决该问题 ? SQL> select * from emp where deptno in(10, 20) SQL> select * from emp where deptno10 or deptno20 集合运算: Select * from emp …...

UniAD:自动驾驶的统一架构 - 创新与挑战并存

引言 自动驾驶技术正经历一场架构革命。传统上,自动驾驶系统采用模块化设计,将感知、预测和规划分离为独立组件。而上海人工智能实验室的OpenDriveLab团队提出的UniAD(Unified Autonomous Driving)则尝试将这些任务整合到一个统一…...

transformers 中的 input_ids 和 labels 是什么

transformers 中的 input_ids 和 labels 是什么 input_ids 是输入文本的数字化表示,而 labels 是模型训练的目标值 在自然语言处理(NLP)和使用 transformers 库进行模型训练时,tokenizer = AutoTokenizer.from_pretrained(model_path) 这行代码是用于从预训练模型路径加载…...

各种排序思路及实现

目录 1.排序概念常见的排序算法 2.常见排序算法实现(1)插入排序直接插入排序希尔排序(缩小增量排序) (2)选择排序直接选择排序堆排序 (3)交换排序冒泡排序快速排序(hoare…...

golang 采用use-go/onvif获取RTSP流

采用https://github.com/use-go/onvif得到完整的RTSP流的地址 全局变量UseGoMain 函数GetDeviceInformation 函数GetRTSPUri 函数 全局变量 这些变量用来设定 ONVIF 设备的连接信息,包含设备地址、用户名和密码 var deviceXaddr "*92.1*8.11*.12*:80" …...

虚幻基础:碰撞帧运算

能帮到你的话,就给个赞吧 😘 文章目录 碰撞碰撞盒线段检测 帧运算:每个程序流就是一帧的计算结果速度过快时(10000),导致每帧移动过大(83),从而导致碰撞盒错过而没有碰撞速度快的碰撞要用线段检测 碰撞 碰撞盒 线段检…...

【北京市小客车调控网站-注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 暴力破解密码,造成用户信息泄露短信盗刷的安全问题,影响业务及导致用户投诉带来经济损失,尤其是后付费客户,风险巨大,造成亏损无底洞…...

西湖大学团队开源SaProt等多款蛋白质语言模型,覆盖结构功能预测/跨模态信息搜索/氨基酸序列设计等

2025 年 3 月 22—23 日,上海交通大学「AI 蛋白质设计峰会」正式举行。 本次峰会汇聚了来自清华大学、北京大学、复旦大学、浙江大学、厦门大学等知名高校的 300 多位专家学者,以及 200 余位行业领军企业代表和技术研发人员,深入探讨了 AI 在…...

算法--递归实现【DFS】

题目:指数型枚举 从 1∼n这 n 个整数中随机选取任意多个,输出所有可能的选择方案。 输入格式 输入一个整数 n。 输出格式 每行输出一种方案。 同一行内的数必须升序排列,相邻两个数用恰好 11 个空格隔开。 对于没有选任何数的方案&#xff0c…...