浏览器自动化与AI Agent结合项目browser-use初探
browser-use介绍
browser-use是将您的 AI 代理连接到浏览器的最简单方式。它通过提供一个强大且简单的接口来实现 AI 代理访问网站的自动化。
实践
上手也非常简单,创建一个python虚拟环境,pip install browser-use,再playwright install即可。
现在需要进行LLM的配置,官方推荐使用gpt-4o,但是为了降低成本,方便让看了教程感兴趣的人能够方便上手,这里我使用的是硅基流动提供的模型。目前硅基流动注册送14元不过期额度,够用一段时间的了,邀请链接:https://cloud.siliconflow.cn/i/Ia3zOSCU。如果你的额度不够了,但是也想体验一下,可以私聊我,我可以提供一个api key暂时供你快速上手体验,额度用差不多了,我就停止了。
创建一个.env文件,这样写:
Silicon_Cloud_API_KEY=xxx
Base_URL=https://api.siliconflow.cn
Model=Qwen/Qwen2.5-72B-Instruct
创建一个test脚本,这样写:
from langchain_openai import ChatOpenAI
from browser_use import Agent
from dotenv import load_dotenv
import os
load_dotenv()
import asyncio
api_key = os.getenv('Silicon_Cloud_API_KEY')
base_url = os.getenv('Base_URL')
model = os.getenv('Model')
llm = ChatOpenAI(model=model, api_key=api_key, base_url=base_url)
async def main():
agent = Agent(
task="获取https://github.com/OpenInterpreter/open-interpreter仓库的前五个问题",
llm=llm,
use_vision=False,
)
result = await agent.run()
print(result)
asyncio.run(main())
查看效果:



还生成了一个agent_history.gif可以查看流程:

将结果与实际对比:

可以发现browser-use非常准确的获取了。
再使用一个更普遍的例子,就是获取当前微博前十的热搜。
from langchain_openai import ChatOpenAI
from browser_use import Agent
from dotenv import load_dotenv
import os
load_dotenv()
import asyncio
api_key = os.getenv('Silicon_Cloud_API_KEY')
base_url = os.getenv('Base_URL')
model = os.getenv('Model')
llm = ChatOpenAI(model=model, api_key=api_key, base_url=base_url)
async def main():
agent = Agent(
task="获取当前微博前十的热搜",
llm=llm,
use_vision=False,
)
result = await agent.run()
print(result)
asyncio.run(main())


最后
以上就是使用硅基流动中的Qwen/Qwen2.5-72B-Instruct快速体验browser-use的效果。初步体验感觉是一个很有潜力的项目,将AI Agent与浏览器自动化结合确实可以做很多事情。
浏览器自动化与AI Agent结合项目browser-use初探的更多相关文章
- splinter python浏览器自动化操作,模拟浏览器的行为
Splinter可以非常棒的模拟浏览器的行为,Splinter提供了丰富的API,可以获取页面的信息判断当前的行为所产生的结果 最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有 ...
- Python实现浏览器自动化操作
Python实现浏览器自动化操作 (2012-08-02 17:35:43) 转载▼ 最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有不少介绍,例如使用pamie,但是只是 ...
- [转载]Python实现浏览器自动化操作
原文地址:Python实现浏览器自动化操作作者:rayment 最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有不少介绍,例如使用pamie,但是只是支持IE,而且项目也较久没 ...
- 测试你的浏览器是否支持WebGL(Does My Browser Support WebGL)
测试你的浏览器是否支持WebGL(Does My Browser Support WebGL) 关于WebGL:WebGL是一种3D绘图标准,这种绘图技术标准允许把JavaScript和OpenGL ...
- Python—selenium模块(浏览器自动化工具)
selenium可以用来完成浏览器自动化相关的操作,写一些代码制定一些基于浏览器自动化的相关操作(行为动作),当代码执行后,浏览器就会自动触发相关的事件 安装方法: pip install selen ...
- 浏览器自动化的一些体会9 访问angular页面的一个问题
发现浏览器自动化有一个重要方面没有提及,即所谓的无页面浏览器,不过最近没有需求,不想尝试,先记上一笔,以后有需求时,可以有个思路. 大约一两个月前(现在比较懒散,时间不知不觉过去,连今天是几号有时候都 ...
- 浏览器自动化的一些体会2 webBrowser控件之ajax
上个帖子简要讨论了浏览器自动化的几种方法.现在讨论webBrowser控件使用中的一些问题.基本的操作就不详细说了,随便网上找个帖子或找本书都有介绍的.这里只写点网上似乎少有人总结过的内容,以及自己的 ...
- saltstack自动化运维系列⑩SaltStack二次开发初探
saltstack自动化运维系列⑩SaltStack二次开发初探 1.当salt运行在公网或者网络环境较差的条件下,需要配置timeout时间vim /etc/salt/master timeout: ...
- 浏览器默认样式(user agent stylesheet)+cssreset
每种浏览器都有一套默认的样式表,即user agent stylesheet,在写网页时,没有指定的样式,按浏览器内置的样式表来渲染.这是合理的,像word中也有一些预留样式,可以让我们的排版更美观整 ...
- 浏览器自动化工具-Selenium
Table of Contents 1. 什么是Selenium 2. 简单的例子 3. PS 什么是Selenium Selenium可以自动化操作浏览器,利用Selenium可以模拟用户操作,因此 ...
随机推荐
- nginx之日志切割
方便查看nginx日志, 平常会将nginx日志进行每日切割处理. 这里介绍 平常比较常用的两种方式 1. logrotate 在linux上logrotate是一个日志文件管理工具.用于分割日志文件 ...
- 本地环境搭建Virtualbox+Vagrant
环境准备 virtualbox是免费,不必要费劲去找破解,下载就可以用. 使用virtualbox每次安装虚拟机,需要你去下载iso,然后设置虚拟机硬件配置,使用iso创建虚拟器.一系列的手工操作,如 ...
- Node.js Express 框架(1)
1.Express介绍 Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具. Express的特点: 实现 ...
- Adobe PS 2024 软件分享 torrent
Adobe-Photoshop-2024-25.5.0.375 下载工具建议使用 qBittorrent-enhance,qBittorrent, Transmission, uTorrent 等. ...
- CentOS上配合nginx 使用 Certbot 生成SSL证书
您可以使用 Let's Encrypt 来申请免费的 SSL 证书.以下是在 CentOS 上安装 Certbot 并使用它来获取 Let's Encrypt SSL 证书的步骤: 安装 Certbo ...
- N皇后问题(DFS-深度优先算法)
N皇后问题(DFS-深度优先算法) 题目描述: 在 N×N 的方格棋盘放置了 N 个皇后,使得它们不相互攻击(即任意 22 个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成 45° 的斜线上. ...
- CVE-2023-0461 漏洞分析与利用
PS: 文章首发于补天社区 漏洞分析 tcp_set_ulp里面会分配和设置 icsk->icsk_ulp_data,其类型为 tls_context tcp_setsockopt do_tcp ...
- [ARC107D] Number of Multisets题解
很显然的动态规划. 令 $f_{i,j}$ 为 $n=i$,$k=j$ 时满足题意的集合数. 依题意可得:一个集合可以只由另一个集合添加元素或将所有元素除二得到. 初始:$f_{0,0}=1$. 目标 ...
- ng-alain 创建页面
https://ng-alain.com/cli/generate/zh https://ng-alain.com/docs/new-page/zh 默认情况下,创建模块 trade,创建在目录 sr ...
- [SpringBoot]浏览器输出中文乱码问题解决
问题情境: IDEA.Springboot.浏览器访问接口查看返回的JSON数据,发现中文乱码 解决方案: server: servlet: encoding: charset: UTF-8 enab ...