使用 Browser-Use WebUI + DeepSeek 实现浏览器AI自动化全攻略

news/2025/3/25 23:53:20/文章来源:https://www.cnblogs.com/chatBlog/p/18788627

使用 Browser-Use WebUI + DeepSeek 实现浏览器AI自动化全攻略

环境准备

1. 安装 Python 环境

  • 版本要求:Python 3.11 或更高版本
  • 验证安装:命令行执行 python --version
  • 注意:安装时需勾选 "Add to PATH" 选项(Windows用户)

2. 核心工具安装

# 安装 browser-use 框架
pip install browser-use# 安装 Playwright 浏览器自动化工具
playwright install

[!TIP]

  • 使用国内镜像
    设置环境变量,使用国内镜像源加速下载:

    # Windows
    set PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright
    playwright install# macOS/Linux
    export PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright
    playwright install
    
  • 手动下载浏览器

    1. 访问 Playwright 官方下载页面 或镜像站,手动下载所需浏览器的二进制文件。
    2. 将下载的文件放置到 Playwright 的缓存目录中:
      • Windows: %USERPROFILE%\AppData\Local\ms-playwright
      • macOS/Linux: ~/Library/Caches/ms-playwright~/.cache/ms-playwright

3. 安装项目依赖

pip install langchain-google-genai==2.0.8
pip install pyperclip==1.9.0
pip install gradio==5.9.1
pip install langchain-ollama==0.2.2
pip install langchain-openai==0.2.14

项目配置

1. 获取项目代码

  1. 访问 GitHub 仓库:https://github.com/browser-use/web-ui
  2. 下载 ZIP 包并解压到本地目录
  3. 推荐存放路径(示例):
    • Windows: E:\browser-use-webui
    • Linux/macOS: ~/projects/browser-use-webui

image-20250126010829730

或使用git

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

image-20250126011025744

2. 环境变量配置

  1. 复制 .env.example.env

    cp .env.example .env
    

    image-20250126011655029

  2. 关键配置项说明:

    # 使用自定义 Chrome 浏览器时配置
    CHROME_PATH = "C:\Program Files\Google\Chrome\Application\chrome.exe"
    CHROME_USER_DATA = "C:\Users\<YourName>\AppData\Local\Google\Chrome\User Data"
    

    image-20250126012147974


1. 找到项目目录

  • 找到已经下载的 browser-use-webui 项目。
  • 默认情况下,项目文件夹中应包含以下文件:
    • webui.py
    • src/
    • .env
    • 其他项目文件

2. 切换到项目目录

在 CMD 或 PowerShell 中,使用 cd 命令切换到项目目录。例如:

cd D:\browser-use-webui

或者:

cd C:\Users\<你的用户名>\Downloads\browser-use-webui

3. 确认 webui.py 存在

在项目目录下运行以下命令,确认 webui.py 文件存在:

dir webui.py

如果文件存在,会显示类似以下内容:

 Volume in drive C is OSVolume Serial Number is XXXX-XXXXDirectory of C:\path\to\project2023-10-01  12:34 PM             1,234 webui.py1 File(s)          1,234 bytes0 Dir(s)  123,456,789,012 bytes free

4. 运行项目

确保在项目目录下运行以下命令:

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

常见错误

缺少lxml[html_clean]

image-20250126013242701

1. 安装 lxml[html_clean]

运行以下命令安装 lxml 及其 HTML 清理模块:

pip install lxml[html_clean]

2. 安装 lxml_html_clean

如果上述方法无效,可以直接安装 lxml_html_clean

pip install lxml_html_clean

3. 确保所有依赖安装正确

在安装完上述依赖后,重新安装项目所需的其他依赖:

pip install -r requirements.txt

如果项目没有 requirements.txt 文件,可以手动安装以下依赖:

pip install langchain-google-genai==2.0.8 \pyperclip==1.9.0 \gradio==5.9.1 \langchain-ollama==0.2.2 \langchain-openai==0.2.14

4. 检查 Python 环境

确保你使用的 Python 环境正确:

python --version  # 确认是 Python 3.11 或更高版本
pip --version     # 确认 pip 是最新版本

如果环境有问题,可以尝试创建一个新的虚拟环境:

python -m venv myenv
myenv\Scripts\activate
pip install --upgrade pip
pip install lxml[html_clean]
pip install -r requirements.txt

5. 重新运行项目

安装完依赖后,重新运行项目:

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

cannot import name 'AgentStepErrorTelemetryEvent'

image-20250126013519622

1. 修改 custom_agent.py

  1. 打开文件:D:\browser-use-webui\src\agent\custom_agent.py

  2. 找到以下代码:

    from browser_use.telemetry.views import (AgentEndTelemetryEvent,AgentRunTelemetryEvent,AgentStepErrorTelemetryEvent,
    )
    
  3. AgentStepErrorTelemetryEvent 替换为 AgentStepTelemetryEvent

    from browser_use.telemetry.views import (AgentEndTelemetryEvent,AgentRunTelemetryEvent,AgentStepTelemetryEvent,
    )
    

    image-20250126014238829

  4. 保存文件。

2. 重新启动项目

在修改代码后,重新运行项目:

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

代理问题

image-20250126014745273

1. 设置 share=True

webui.py 中,找到 demo.launch() 的调用,并添加 share=True 参数:

demo.launch(server_name=args.ip, server_port=args.port, share=True)

这将启用 Gradio 的共享功能,生成一个公共链接,即使 localhost 不可访问也能正常运行。

2. 检查代理设置

如果你的系统配置了代理,可能会导致 localhost 无法访问。可以通过以下方式检查和修改代理设置:

  1. 检查环境变量

    echo %HTTP_PROXY%
    echo %HTTPS_PROXY%
    

    如果设置了代理,尝试关闭或配置正确的代理:

    set HTTP_PROXY=
    set HTTPS_PROXY=
    
  2. 修改系统代理设置

    • Windows:打开“设置” -> “网络和 Internet” -> “代理”,关闭代理服务器。
    • macOS/Linux:检查网络设置,确保没有配置代理。

3. 允许访问 localhost

如果代理是必需的,确保代理允许访问 localhost。可以在代理设置中添加以下规则:

  • 允许 127.0.0.1localhost

4. 使用 0.0.0.0 替代 localhost

server_name 设置为 0.0.0.0,允许从任何 IP 访问:

demo.launch(server_name="0.0.0.0", server_port=args.port)

然后通过 http://127.0.0.1:7788http://<你的IP>:7788 访问。

5. 检查端口占用

确保端口 7788 没有被其他程序占用:

netstat -ano | findstr :7788

如果端口被占用,可以更换端口号:

demo.launch(server_name=args.ip, server_port=12345)  # 使用其他端口

6. 更新 Gradio

如果 Gradio 版本较旧,可能会导致兼容性问题。更新到最新版本:

pip install --upgrade gradio

启动

image-20250126014949941

浏览器打开这个链接:http://127.0.0.1:7788

image-20250126015007220

image-20250211054930079

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

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

相关文章

20234214 2024-2025-2 《Python程序设计》实验一报告

20234214 2024-2025-2 《Python程序设计》实验一报告 课程:《Python程序设计》 班级: 2342 姓名: 唐果儿 学号:20234214 实验教师:王志强 实验日期:2025年3月18日 必修/选修: 公选课 1.实验内容 (一)实验内容 1.熟悉Python开发环境; 2.练习Python运行、调试技能; …

WinForm 使用 Win32 API 实现的无边框窗口

WinForm 使用 Win32 API 实现的无边框窗口前言 时光荏苒,转眼已近是2025年了。不知不觉两年多没有研究代码了,在这期间 .NET 10 都快 RC 了,前几天刷手机看到张队公众号里有关于 .NET 9.0 AOT 发布的内容,所以写了这些代码来测试一下 AOT 编译的效果,并评估未来是否开发支…

C语言打卡学习第4天(2025.3.23)

今天只写了几道基础题,又看了下数组和冒泡排序,概念搞懂了但是写代码还是比较困难,准备明天把排序这类题好好看看。

一文速通Python并行计算:01 Python多线程编程-基本概念、切换流程、GIL锁机制和生产者与消费者模型

多线程允许程序同时执行多个任务,提升效率和响应性。线程分为新建、就绪、运行、阻塞和死亡五种状态。Python的GIL锁限制多线程并行执行,适合I/O密集型任务。生产者-消费者模型通过共享缓冲区和条件变量实现线程协作,解决数据共享问题。一文速通 Python 并行计算:01 Python…

Spring的三级缓存详解

目录 1、什么是三级缓存 2、三级缓存详解Bean实例化前属性赋值/注入前初始化后总结3、怎么解决的循环依赖 4、不用三级缓存不行吗 5、总结 一、什么是三级缓存 就是在Bean生成流程中保存Bean对象三种形态的三个Map集合,如下:

20244207 实验一 《python程序设计》实验报告

# 20244207 2024-2025-2 《Python程序设计》实验一报告 课程:《Python程序设计》 班级: 2442 姓名: 赵文萱 学号:20244207 实验教师:王志强 实验日期:2025年3月18日 必修/选修: 公选课 1.实验内容 1.熟悉Python开发环境; 2.练习Python运行、调试技能; 3.编写程序,…

20244202 《Python程序设计》实验一报告

20244202 《Python程序设计》实验一报告 课程:《Python程序设计》 班级: 2442 姓名: 陈艺豪 学号:20244219 实验教师:王志强 实验日期:2025年3月23日 必修/选修: 公选课 1.实验内容 (1).熟悉Python开发环境; (2).练习Python运行、调试技能; (3).编写程序,练习变量和类…

USTCPC 2025 游记

队名 合肥一中能不能多请点OI教练,二人队。队长 @包涵宇 ,省队爷。 Day -inf~0 随机写了几道有意思的 cf 。 bhy 又在做黑的插头 dp 。膜拜。 Day 1 早上被父母逼着学习文化课,结果作业做不完直接半红温状态,, 加上昨天做了 ~8h 文化课作业只完成了 1/2 ,然后直接不做了…

AI运维助手-LinuxAgent

介绍 LinuxAgent是基于LLM大模型的智能运维助手,通过接入DeepSeek API实现对Linux终端的自然语言控制,可以实现高效的运维工作。目前已经更新到2.0.5版本。 LinuxAgent能够理解用户的自然语言指令,只要描述需求,系统自动解析意图并执行,支持中文、英语等,可以理解复杂的多…

微服务Elasticsearch

Elasticsearch中倒排索引 为什么查询效率高 比如说一个商品 在一百万条数据中 你如果要搜的话 他会从一百万条数据中去寻找 比如说你要搜小米手机 但是倒排索引是这样的 //倒排 { "小米": [1], "手机": [1,2,3,4], } 他在给定的文档范围内去搜索 比如说正…

20242825 2024-2025-2 《网络攻防实践》第四周作业

@目录一. 实验内容1.1 实验内容概述1.2 实验相关知识概述二. 实验过程2.1 ARP缓存欺骗攻击2.1.1 实验环境配置2.1.2 连通性测试2.1.3 继续实验实验亮点出现问题检查问题解决问题2.2 ICMP重定向攻击2.2.1 实验环境配置2.2.2 连通性测试发现问题检查问题解决问题2.2.3 继续实验…