Windows 中搭建 browser-use WebUI 1.4

目录

  • 1. 背景介绍
  • 2. 搭建过程
  • 3. 补充



1. 背景介绍

背景:想要在 Windows 中复现 browser-use WebUI pickle反序列化漏洞,该漏洞在 v1.7 版本中已经修复,所以需要搭建 小于 1.7 版本的环境,我这里搭建的是 1.4 版本。

项目地址:https://github.com/browser-use/web-ui.git


2. 搭建过程


新建一个目录:WebUI

在这个目录中打开cmd,克隆仓库:git clone https://github.com/browser-use/web-ui.git

进入安装目录:cd web-ui

切换到1.4版本:git checkout v1.4

一定要切换版本,最新版已经修复了,在webui的目录下执行命令:git describe --tags
这个命令会输出你当前所在的 版本 tag(如果在 tag 上),或显示你基于哪个 tag 派生出来的。

在这里插入图片描述



官方建议使用 uv 来管理 Python 环境。

安装 uv:pip install uv

使用 uv:uv venv --python 3.11

激活虚拟环境:.venv\Scripts\activate

在这里插入图片描述



在安装依赖前需要做一些改动。按照直接 clone 下来的 requirements ,最后启动的时候会一直报错错:TypeError: argument of type 'bool' is not iterable

反复试了很多次,最后自己摸索出来的解决办法是修改 requirements.txt 文件,将 gradio 的版本改为 5.23.1:gradio==5.23.1



(在虚拟环境中)安装python依赖:uv pip install -r requirements.txt

在 Windows 的 cmd 命令行中,进入 Python 虚拟环境后的标志通常是在命令行提示符前面看到虚拟环境的名称。前面的 (web-ui) 表示你当前已经激活了名为 web-ui 的虚拟环境(名称取决于你创建虚拟环境时使用的名字),后是你当前所在的目录路径:

在这里插入图片描述

安装浏览器运行环境:playwright install

(安装这个环境的话,使用 web-ui 的时候不选择用自己的浏览器,就会启动现在安装的浏览器环境。如果想用自己的浏览器,就不用安装这个,后面再修改一下配置文件即可。)



(在虚拟环境中)配置环境:copy .env.example .env

配置文件 .env ,可以在里面修改浏览器的地址,设置各种 api 等。



(在虚拟环境中)启用 WebUI:python webui.py --ip 192.168.119.1 --port 7788

在浏览器中访问:http://192.168.119.1:7788

3. 补充


如果前面没有安装浏览器运行环境,想使用自己的浏览器,需要做以下更改。

在 .env 文件中修改:

CHROME_PATH="C:\Program Files\Google\Chrome\Application\chrome.exe"
CHROME_USER_DATA="C:\Users\你的username\AppData\Local\Google\Chrome\User Data"CHROME_PERSISTENT_SESSION=true

在这里插入图片描述

其中:

CHROME_PATH 是浏览器的执行文件的路径,需要自己做修改,不要直接复制。

CHROME_USER_DATA 是浏览器的数据目录,需要自己做修改,不要直接复制。

CHROME_PERSISTENT_SESSION 是设置让浏览器一直打开,可选项。

接下来:

  • 关闭所有 Chrome 窗口
  • 在非 Chrome 浏览器(如 Firefox 或 Edge)中打开 WebUI (192.168.119.1:7788)。这一点很重要,因为持久性浏览器上下文将在运行代理时使用 Chrome 数据。
  • 选中浏览器设置中的“使用自己的浏览器”选项。

在这里插入图片描述





本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/78951.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据通信完全指南】从物理层到协议栈的深度解析

目录 1. 通信技术演进与核心挑战1.1 从电报到5G的技术变迁1.2 现代通信系统的三大瓶颈 2. 通信系统架构深度解构2.1 OSI七层模型运作原理2.2 TCP/IP协议栈实战解析 3. 物理层关键技术实现3.1 信号调制技术演进路线3.2 信道复用方案对比 4. 数据传输可靠性保障4.1 CRC校验算法数…

CMD与PowerShell:Windows命令行工具的对比与使用指南

CMD与PowerShell:Windows命令行工具的对比与使用指南 文章目录 CMD与PowerShell:Windows命令行工具的对比与使用指南引言1. CMD(命令提示符)简介1.1 什么是CMD?1.2 CMD的特点1.3 常用CMD命令示例1.4 CMD的优势与局限 2…

93. 后台线程与主线程更新UI Maui例子 C#例子

在.NET MAUI开发中,多线程是常见的需求,但UI更新必须在主线程上执行。今天,我们来探讨一个简单而优雅的解决方案:MainThread.InvokeOnMainThreadAsync。 一、背景 在跨平台应用开发中,后台线程常用于执行耗时操作&am…

海思正式公开了星闪BS21E的SDK

今天海思正式在Gitee平台发布了BS21E的SDK:fbb_bs2x: fbb_bs2x代码仓为支持bs21e解决方案SDK。技术论坛:https://developers.hisilicon.com/forum/0133146886267870001 fbb_bs2x代码仓为支持bs21e解决方案SDK,该SDK包从统一开发平台FBB&#…

QML学习:使用QML实现抽屉式侧边栏菜单

文章目录 前言一、环境配置二、实现步骤三、示例完整代码四、注意事项总结 前言 最近在进行QML的学习,发现一个比较有意思的交互设计:抽屉式侧边栏菜单,出于开发实战需求,最终实现了一个支持手势拖拽、弹性动画、蒙层效果和​​智…

峰终定律——AI与思维模型【85】

一、定义 峰终定律思维模型是指人们对一段经历的评价主要取决于这段经历中的高峰时刻(无论是正向的还是负向的)以及结束时的感受,而不是整个经历的平均感受。也就是说,如果在一段体验的高峰和结尾阶段给人们留下积极、强烈的印象…

【补题】Codeforces Round 664 (Div. 1) A. Boboniu Chats with Du

题意:给出n,d,m三个值,分别代表,有多少个值ai,使用超过m的ai,需要禁言d天,如果不足也能使用,m代表区分点,问能得到最大的值有多少。 思路: …

单片机与上位机串口通信:原理、应用与实践

注:本文为 “单片机与上位机串口通信” 相关文章合辑。 略作重排,未整理去重。 如有内容异常,请看原文。 单片机与上位机的串行通信 饕餮 tt 于 2019 - 12 - 06 14:47:19 发布 写在前面 本文主要记录单片机通过 TXD、RXD 与上位机进行数据…

996引擎-人物模型(UIModel):创建内观时装备偏移问题

996引擎-人物模型(UIModel):创建内观时装备偏移问题 创建 人物模型(UIModel)问题参考资料创建 人物模型(UIModel) 90、91 是自定义剑甲的穿戴位置,因为需求只需要显示剑甲,所以下面创建人物模型时,只给了剑甲的id、特效。 function Controller:updateUI()-- 自定义收拾…

Python小程序:上班该做点摸鱼的事情

系统提醒 上班会忘记一些自己的事,所以你需要在上班的的时候突然给你弹窗,你就知道要做啥了 源码 这里有一个智能家居项目可以看看(开源) # -*- coding:utf-8 -*- """ 作者:YTQ 日期: 2025年04日29 21:51:24 """ impor…

centos安装部署配置kafka

1、解压到目录 tar -zxvf kafka_2.13-2.8.2.tgz -C /usr/local/kafka2.进入目录 cd /usr/local/kafka/kafka_2.13-2.8.23.查看版本(验证是否已解压) bin/kafka-topics.sh --version4.修改配置,注意:此配置中有一个默认的zookee…

深⼊理解指针(7)

1.函数指针变量的创建 在x86环境下: 我们发现:以函数是有地址的,函数名就是函数的地址,当然也可以通过& 函数名 的⽅式获得函数的地址。 如果我们要将函数的地址存放起来,就得创建函数指针变量咯,函数…

AdaBoost算法的原理及Python实现

一、概述 AdaBoost(Adaptive Boosting,自适应提升)是一种迭代式的集成学习算法,通过不断调整样本权重,提升弱学习器性能,最终集成为一个强学习器。它继承了 Boosting 的基本思想和关键机制,但在…

《PyTorch documentation》(PyTorch 文档)

PyTorch documentation(PyTorch 文档) PyTorch is an optimized tensor library for deep learning using GPUs and CPUs. (PyTorch是一个优化的张量库,用于使用GPU和CPU进行深度学习。) Features described in this documentation are classified by release status: (此…

Android学习总结之算法篇六(数组和栈)

括号匹配 public static boolean isValid(String s) {// 创建一个栈用于存储左括号Stack<Character> stack new Stack<>();// 遍历字符串中的每个字符for (char c : s.toCharArray()) {if (c ( || c [ || c {) {// 如果是左括号&#xff0c;将其压入栈中stack…

遗传算法(Genetic Algorithm,GA)

遗传算法&#xff08;Genetic Algorithm&#xff0c;GA&#xff09;是一种受生物进化理论启发的优化算法&#xff0c;通过模拟自然选择和遗传机制来搜索复杂问题的最优解。 ​​核心原理​​ ​​自然选择与适者生存​​&#xff1a;适应度高的个体更有可能繁殖&#xff0c;将…

消防应急物资智能调用立库:豪越科技助力消防“速战速决”

在消防救援的战场上&#xff0c;时间就是生命&#xff0c;每一秒都关乎着人民群众的生命财产安全。然而&#xff0c;在过去的紧急救援中&#xff0c;应急物资无法及时到位的情况时有发生&#xff0c;成为制约救援效率的关键难题&#xff0c;给救援工作带来了巨大的困境。 想象一…

【MySQL】数据类型和表的操作

目录 一. 常用的数据类型 1.数值类型 1.1 整形类型 1.2 浮点型类型 2.字符串类型 char和varchar的区别 如何选择char和varchar 3.日期类型 4.二进制类型 二. 表的操作 1.查看所有表 2.表的创建 3.查看表的结构 4.表的修改 4.1 添加新的列 4.2 修改表中现有的列 4…

涨薪技术|0到1学会性能测试第43课-apache status模块监控

前面的推文我们认识了apache目录结构与配置知识,今天我们继续来看下apache监控技术,究竟是怎么做性能监控的。后续文章都会系统分享干货,带大家从0到1学会性能测试。 Apache监控技术 关于apache监控通常会有两种方法: 一是:使用apache自带的status监控模块进行监控; 二是…

关于 MCP 的理论知识学习

文章目录 1. 写在最前面2. 基本概念2.1 Why MCP2.1.1 大模型访问的局限2.1.2 过渡阶段—Function Call2.1.3 当前阶段— MCP 3. 碎碎念4. 参考资料 1. 写在最前面 最近有一项任务是写旧版本迁移到新版本的支持文档&#xff0c;文档的编写是借助于 cursor 帮忙写的。但是实现的…