部署DeepSeek模型,进群交流最in玩法!
立即加群
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >使用 browser-use-webui 进行网页信息填写和录入

使用 browser-use-webui 进行网页信息填写和录入

原创
作者头像
叶子Tenney
发布于 2025-03-13 01:04:37
发布于 2025-03-13 01:04:37
8790
举报

引言

在数字化时代,网页信息填写和录入是许多业务流程中的重要环节,例如注册账户、提交在线表单或更新个人信息。这些任务往往耗时且容易出错,而自动化工具的引入可以显著提高效率并减少人为失误。GitHub 上的 browser-use/web-ui 项目为这一需求提供了一个创新且实用的解决方案。

事实上,browser-use 已经提供了一个通用的浏览器自动化工具,但 browser-use/web-ui 更进一步,提供了一个基于 Gradio 构建的 Web 用户界面,并支持多种大型语言模型(LLM),包括 Google、OpenAI、Azure OpenAI、Anthropic、DeepSeek 和 Ollama 等。它允许用户在浏览器中运行 AI 代理,自动完成网页交互任务。该工具的独特功能包括支持自定义浏览器(无需重复登录网站)、高清屏幕录制以及持久化浏览器会话,非常适合需要高效处理网页任务的用户。

本文将详细介绍如何通过本地安装(使用 pip)和 Docker 安装两种方式使用 browser-use/web-ui,并提供完整的操作流程。

效果展示

使用过程

以下是使用 browser-use/web-ui 的两种主要安装和运行方式:本地安装(pip)Docker 安装。请根据您的需求选择适合的方法。

Docker 安装

1. 克隆仓库

与本地安装相同,克隆项目仓库:

代码语言:bash
AI代码解释
复制
git clone https://github.com/browser-use/web-ui.git
cd web-ui
2. 创建并配置环境文件

复制并编辑环境文件:

  • Windows (Command Prompt)
代码语言:cmd
AI代码解释
复制
copy .env.example .env
  • macOS/Linux/Windows (PowerShell)
代码语言:bash
AI代码解释
复制
cp .env.example .env

编辑 .env 文件,添加 API 密钥,例如:

代码语言:ini
AI代码解释
复制
OPENAI_API_KEY=your_openai_key
VNC_PASSWORD=your_vnc_password  # 可选,设置 VNC 密码
3. 运行 Docker

根据需求选择运行模式:

  • 默认模式(任务后关闭浏览器)
代码语言:bash
AI代码解释
复制
docker compose up --build
  • 持久化模式(任务间保持浏览器打开)
代码语言:bash
AI代码解释
复制
CHROME_PERSISTENT_SESSION=true docker compose up --build
4. 访问应用程序
  • Web 界面:打开浏览器,访问 http://localhost:7788
  • VNC 查看器(观察浏览器交互):访问 http://localhost:6080/vnc.html,输入 VNC 密码(默认“youvncpassword”,或 .env 中设置的密码)。
5. 容器管理(可选)
  • 后台运行:
代码语言:bash
AI代码解释
复制
docker compose up -d
  • 查看日志:
代码语言:bash
AI代码解释
复制
docker compose logs -f
代码语言:bash
AI代码解释
复制
docker compose down

本地安装(使用 pip)

克隆仓库

首先,打开终端并运行以下命令,克隆项目仓库到本地:

代码语言:bash
AI代码解释
复制
git clone https://github.com/browser-use/web-ui.git
cd web-ui
设置 Python 环境

建议使用 Python 3.11,并通过 uv 工具创建虚拟环境。执行以下命令:

代码语言:bash
AI代码解释
复制
uv venv --python 3.11

激活虚拟环境:

  • Windows (Command Prompt)
代码语言:cmd
AI代码解释
复制
.venv\Scripts\activate
  • Windows (PowerShell)
代码语言:powershell
AI代码解释
复制
.\.venv\Scripts\Activate.ps1
  • macOS/Linux
代码语言:bash
AI代码解释
复制
source .venv/bin/activate
安装依赖

安装项目所需的 Python 包和 Playwright:

代码语言:bash
AI代码解释
复制
uv pip install -r requirements.txt
playwright install
配置环境

复制示例环境文件并编辑,添加您的 API 密钥和其他配置:

  • Windows (Command Prompt)
代码语言:cmd
AI代码解释
复制
copy .env.example .env
  • macOS/Linux/Windows (PowerShell)
代码语言:bash
AI代码解释
复制
cp .env.example .env

使用文本编辑器打开 .env 文件,填写必要信息,例如:

代码语言:ini
AI代码解释
复制
OPENAI_API_KEY=your_openai_key
CHROME_PATH="C:\Program Files\Google\Chrome\Application\chrome.exe"  # Windows 示例
CHROME_USER_DATA="C:\Users\YourUsername\AppData\Local\Google\Chrome\User Data"  # Windows 示例
运行 Web UI

启动应用程序:

代码语言:bash
AI代码解释
复制
python webui.py --ip 127.0.0.1 --port 7788
访问 Web UI

打开浏览器,导航到 http://127.0.0.1:7788,即可使用 Web 界面。

使用自定义浏览器(可选)

如果需要使用自己的浏览器(如已登录账户的 Chrome),在 .env 文件中设置:

  • Windows
代码语言:ini
AI代码解释
复制
CHROME_PATH="C:\Program Files\Google\Chrome\Application\chrome.exe"
CHROME_USER_DATA="C:\Users\YourUsername\AppData\Local\Google\Chrome\User Data"
  • macOS
代码语言:ini
AI代码解释
复制
CHROME_PATH="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
CHROME_USER_DATA="/Users/YourUsername/Library/Application Support/Google/Chrome"

关闭所有 Chrome 窗口,在非 Chrome 浏览器(如 Firefox)中打开 Web UI,并在界面中勾选“Use Own Browser”选项。

保持浏览器打开(可选)

若希望在 AI 任务间保持浏览器窗口打开,可在 .env 中设置:

代码语言:ini
AI代码解释
复制
CHROME_PERSISTENT_SESSION=true

使用 VNC 访问浏览器可以连接 5901 端口,而使用 Web UI 访问浏览器可以连接 6080 端口。


结论

browser-use/web-ui 是一个功能强大且灵活的工具,能够有效自动化网页信息填写和录入任务。通过支持多种大型语言模型和自定义浏览器配置,它可以无缝集成到现有工作流程中。无论是选择本地安装(pip)还是 Docker 部署,用户都能通过简单的步骤快速上手,显著提升工作效率并减少错误。对于需要频繁处理网页交互的用户来说,这款工具无疑是一个值得尝试的解决方案。


问题解决

旧版本 docker compose 升级

代码语言:bash
AI代码解释
复制
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update
sudo apt install docker-compose-plugin

docker compose version

参考

  1. browser-use/web-ui GitHub 仓库
  2. 项目文档

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
每日一题(17)
看完题目有点迷糊?那看来你并没有掌握好类的初始化顺序 这种题目理清楚执行顺序就好办。执行顺序及解析为题上面程序中的1234
KEN DO EVERTHING
2019/01/17
3440
Java的Object类
Object 类是 Java 中所有类的始祖,在 Java 中每个类都是由它扩展而来的。但是并不需要这样写:public class Employee extends Object 如果没有明确地指出父类,Object 就被认为是这个类的父类。
真正的飞鱼
2023/04/29
5660
Java 基础 | Object 源码解
Java 是一门面向对象的语言,在 Java 里面一切都可以看作是一个对象,而 Java 里面所有的对象都默认继承于 Object 类,所以狗哥今天就从源码角度复习了一遍这个类。
JavaFish
2019/10/17
5850
Java 基础 | Object 源码解
Effective.Java 读书笔记(8)关于equals方法
重写equals看上去十分简单对吧,但是我觉得很多时候重写equals可能会招致一些问题,这些问题有时可能会特别严重,当然了不重写不就完事了吗?但是这只适用于那些每个实例只等于自身的类,注意以下几种可以不重写的情况:
Mezereon
2018/09/13
4200
Effective Java 2.0_中英文对照_Item 3
文章作者:Tyan 博客:noahsnail.com  |  CSDN  |  简书
Tyan
2022/05/09
5440
《Effective Java》读书笔记(二)之对于所有对象都通用的方法
一般以下几种情况,不适宜覆盖equals方法 1.类的每个实例本质上都是唯一的,对于代表活动实体而不是值的类确实如此,例如Thread.
老马的编程之旅
2022/06/22
3130
Effective Java 2.0_中英文对照_Item 2
Static factories and constructors share a limitation: they do not scale well to large numbers of optional parameters. Consider the case of a class representing the Nutrition Facts label that appears on packaged foods. These labels have a few required fields—serving size, servings per container, and calories per serving and over twenty optional fields—total fat, saturated fat, trans fat, cholesterol, sodium, and so on. Most products have nonzero values for only a few of these optional fields.
Tyan
2022/05/09
3430
Effective Java 2.0_中英文对照_Item 5
It is often appropriate to reuse a single object instead of creating a new functionally equivalent object each time it is needed. Reuse can be both faster and more stylish. An object can always be reused if it is immutable (Item 15).
Tyan
2022/05/09
3170
Effective Java 2.0_中英文对照_Item 1
THIS chapter concerns creating and destroying objects: when and how to create them, when and how to avoid creating them, how to ensure they are destroyed in a timely manner, and how to manage any cleanup actions that must precede their destruction.
Tyan
2022/05/09
2730
笔记《Effective Java》02:对所有对象都通用的方法
《Effective Java》这本书可以说是程序员必读的书籍之一。这本书讲述了一些优雅的,高效的编程技巧。对一些方法或API的调用有独到的见解,还是值得一看的。刚好最近重拾这本书,看的是第三版,顺手整理了一下笔记,用于自己归纳总结使用。建议多读一下原文。今天整理第二章节:对所有对象都通用的方法。
有一只柴犬
2025/02/07
1120
笔记《Effective Java》02:对所有对象都通用的方法
Effective Java 2.0_中英文对照_Item 6
文章作者:Tyan 博客:noahsnail.com  |  CSDN  |  简书
Tyan
2022/05/09
2880
Effective Java 2.0_中英文对照_Item 4
文章作者:Tyan 博客:noahsnail.com  |  CSDN  |  简书
Tyan
2022/05/09
3390
Effective Java 2.0_中英文对照_Item 7
文章作者:Tyan 博客:noahsnail.com  |  CSDN  |  简书
Tyan
2022/05/09
3270
java-继承和多态
继承(inheritance) 继承满足“is-a”规则,即Manager is a Employee
卢衍飞
2023/02/16
3930
实现一个通用的中英文排序工具
利用Collator类可以轻松实现排序,但是我们可能有各种model都需要进行排序,这样就会有一个问题,如果单独为每个model写一段排序代码,代码重复量很大。
BennuCTech
2021/12/10
4010
实现一个通用的中英文排序工具
Effective Java通俗理解(上)
  这篇博客是Java经典书籍《Effective Java(第二版)》的读书笔记,此书共有78条关于编写高质量Java代码的建议,我会试着逐一对其进行更为通俗易懂地讲解,故此篇博客的更新大约会持续1个月左右。 第1条:考虑用静态工厂方法代替构造器   通常情况下我们会利用类的构造器对其进行实例化,这似乎毫无疑问。但“静态工厂方法”也需要引起我们的高度注意。   什么是“静态工厂方法”?这不同于设计模式中的工厂方法,我们可以理解它为“在一个类中用一个静态方法来返回这个类的实例”,例如: public st
用户1148394
2018/01/12
1.5K0
Effective Java通俗理解(上)
Java Object 类方法解析
我们都知道 Java 语言是面向对象的编程语言,而面向对象编程以类作为基本单元。我们也都知道,在 Java 中,所有的类都将 Object 类作为父类,而 Object 类本身提供了一些基础但是很有用的方法,这些方法我们在日常工作中经常会用到,因此熟悉它们的原理和用法对我们的开发会有很大的帮助,下面我们来一起看一些这些方法:
指点
2019/01/18
6750
Java Object 类方法解析
Effective Java(第三版)——条目十四:考虑实现Comparable接口
“ 今天就周五了,提前跟小伙伴们说一声周末愉快,有加班的小伙伴们,嘿嘿,加班愉快。今天给大家带来的是,考虑实现Comparable接口”
每天学Java
2020/06/01
7240
Effective Java(第三版)——条目十四:考虑实现Comparable接口
Effective Java 2.0_中英文对照_第一章
THIS book is designed to help you make the most effective use of the JavaTM programming language and its fundamental libraries, java.lang, java.util, and, to a lesser extent, java.util.concurrent and java.io. The book discusses other libraries from time to time, but it does not cover graphical user interface programming, enterprise APIs, or mobile devices.
Tyan
2022/05/09
2890
Effective Java 2.0_中文版_Item 3
文章作者:Tyan 博客:noahsnail.com  |  CSDN  |  简书
Tyan
2022/05/09
3110
相关推荐
每日一题(17)
更多 >
LV.1
这个人很懒,什么都没有留下~
目录
  • 引言
  • 效果展示
  • 使用过程
    • Docker 安装
      • 1. 克隆仓库
      • 2. 创建并配置环境文件
      • 3. 运行 Docker
      • 4. 访问应用程序
      • 5. 容器管理(可选)
    • 本地安装(使用 pip)
      • 克隆仓库
      • 设置 Python 环境
      • 安装依赖
      • 配置环境
      • 运行 Web UI
      • 访问 Web UI
      • 使用自定义浏览器(可选)
      • 保持浏览器打开(可选)
  • 结论
  • 问题解决
    • 旧版本 docker compose 升级
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档