Skip to content

Browser Use 浏览器自动化 Agent

我们给大家推荐一款支持结构化识别的智能体。


Browser Use

Browser Use 是一个非常好用的 AI 自动化工具, 可以实现用人类语言自动化操作浏览器。

Browser Use 是一个非常好用的 AI 自动化工具, 可以实现用人类语言自动化操作浏览器。

Enable AI to control your browser


快速开始

from langchain_openai import ChatOpenAI
from browser_use import Agent
import asyncio

async def main():
    agent = Agent(
        task="打开https://ceshiren.com 进入搜索 进入高级搜索 搜索python 打开第一条搜索结果的链接,返回界面标题,断言标题中有python",
        llm=ChatOpenAI(model="gpt-4o"),
    )
    result = await agent.run()
    print(result)

asyncio.run(main())

这是一份 browser use 框架的使用示例。 它提供了 Agent 类,进行初始化。 第一个参数是你的任务 task, 第二个参数是你使用的大模型。 直接执行即可,用起来还是非常简单的。


使用案例

import asyncio
import os
import sys

from browser_use import Agent
from browser_use.controller.service import Controller
from langchain_openai import ChatOpenAI


async def main(task):
    controller = Controller()
    controller.registry.registry.actions.pop('search_google')
    agent = Agent(
        task=task, llm=ChatOpenAI(model="gpt-4o-mini"),
        use_vision=False, controller=controller
    )
    result = await agent.run()
    print(result.model_dump_json(indent=2))


def test_hogwarts():
    asyncio.run(main("打开ceshiren.com 进入搜索 进入高级搜索 搜索python"))


if __name__ == '__main__':
    os.environ["ANONYMIZED_TELEMETRY"] = "false"
    asyncio.run(main(sys.argv[1]))

需要注意的是它默认使用了 google 去搜索网址。你需要修改它的 controller 内部的自定义动作。这是一个在国内可运行的代码示例,大家可以在本地练习下。 这段代码去掉了 google 的 action,就可以轻松的使用起来了。


Browser Use Web-UI

除了比较成熟的框架外,官方提供了一个比较简单的 UI 界面,可以辅助操作,适合新人入手。可以通过 UI 界面配置 Agent 与大模型。不过这个项目可用度和定制性并不高,仅供参考。

这是 browser use webui 的基本界面。 你可以通过这个界面配置浏览器的配置,配置大模型,并执行任务。 也可以查看执行结果与每次结果的录制数据。


源代码安装

# Clone the repository
git clone https://github.com/browser-use/web-ui.git
cd web-ui

# Copy and configure environment variables
cp .env.example .env
# Edit .env with your preferred text editor and add your API keys

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

这是使用源代码启动的方式,git clone 项目,进入目录后 copy 对应的配置文件,然后直接启动。


docker compose 方式启动

# Clone the repository
git clone https://github.com/browser-use/web-ui.git
cd web-ui

# Copy and configure environment variables
cp .env.example .env
# Edit .env with your preferred text editor and add your API keys

## docker方式启动
# Build and start the container with default settings (browser closes after AI tasks)
docker compose up --build

# Or run with persistent browser (browser stays open between AI tasks)
CHROME_PERSISTENT_SESSION=true docker compose up --build

这是使用 docker 启动的方式,在项目的根目录下有对应的 docker compose 的配置文件。 使用 docker compose up 启动即可


Run Agent

在运行界面可以输入自己的任务并执行,执行后还可以在结果里查看运行记录。底层使用的是 gradio 框架实现的。感兴趣的同学可以自行探索。


hogwarts-browser-use

  • 增加命令行启动支持
  • 去掉 google 搜索
  • 支持命令行参数配置大模型

因为 browser use 是一个代码框架,没有提供一些便捷的工具封装, 再加上 google 搜索的问题,导致用起来会比较麻烦。 为了让霍格沃兹测试开发学社的小伙伴们更方便的使用。 我们做了一个封装版,可以支持纯命令行调用,从而让大家可以轻松的使用。 它还支持通过命令行参数进行大模型的配置。 相关代码可以从学员论坛节点里找到。


命令行用法

# 依赖python 3.11以上版本
hogwarts-browser-use 打开ceshiren.com 进入搜索 点击高级搜索 搜索python
hogwarts-browser-use -m gpt-4o-mini 打开ceshiren.com 进入搜索 点击高级搜索 搜索python
hogwarts-browser-use -m mistral 打开ceshiren.com 进入搜索 点击高级搜索 搜索python
hogwarts-browser-use -m qwen2.5 打开ceshiren.com 进入搜索 点击高级搜索 搜索python

这是这个工具的基本用法,详情可参考官网文档。


这是 hogwarts browser use 的一个使用效果。 可以通过 pip install 直接安装。 然后通过命令行用法先后执行百度搜索与测试人搜索。


百度搜索演示

我们可以使用 hogwarts browser use 进行百度搜索,先基本了解下他的执行过程。


测试人论坛搜索演示

接下来我们构建一个更长的操作流程。我们可以使用 hogwarts browser use 执行测试人论坛的搜索。