BrowserUse网络爬虫指南

在本文中,我将向你展示如何使用 BrowserUse 进行网络爬虫,并说明它如何通过自动化那些通常会占用您一天时间的繁琐、耗时的任务来节省您的时间。

BrowserUse网络爬虫指南

在本文中,我将向你展示如何使用 BrowserUse 进行网络爬虫,并说明它如何通过自动化那些通常会占用您一天时间的繁琐、耗时的任务来节省您的时间。让我们深入了解 BrowserUse 如何让生活变得更轻松!

1、什么是浏览器自动化?

浏览器自动化(Browser Automation)是指使用脚本或工具来控制网页浏览器而无需人工干预。它允许用户自动化任务,如访问网站、点击按钮、填写表单和提取信息,例如产品价格、评论和新闻更新。随着人工智能的兴起,自动化变得更加智能和强大,能够创建可以灵活和自适应执行任务的AI代理。

浏览器自动化已经用于自动化简单的重复性任务,比如在网站上运行测试或收集研究数据。然而,AI代理的集成增加了额外的灵活性,使自动化更复杂的任务成为可能,而无需手动干预或详细的编程技能。

2、什么是AI代理?

AI代理(AI Agent)是一种程序,可以根据给定的指令自主执行操作、做出决策并适应新情况。它就像一个数字助手,能够浏览网站、处理弹窗、识别元素,并执行复杂操作,如填写表单或总结信息。

传统的脚本受到预定义指令的限制,使其僵化且重复。而AI代理则更加灵活,可以根据遇到的情况调整行为。例如,AI代理可能会根据任务的上下文决定重试失败的操作或跳过不相关的信息。

3、为什么使用AI进行浏览器自动化?

那么,为什么您想要首先自动化浏览器交互呢?答案很简单:为了节省时间。如果您发现自己在填写相同的表单、从多个来源爬取数据或执行日常任务,自动化这些活动可以为您腾出时间去做更重要的事情。

以下是AI驱动的浏览器自动化可以带给您的好处:

  1. 网络爬虫:从网站上提取数据(如价格、评论和产品详情)可能很耗时。AI代理可以自动化这个过程,使其更快、更准确。
  2. 自动填写表单:无论您是注册服务还是填写工作申请,AI都可以自动填写重复的表单,避免手动输入所有内容的麻烦。
  3. 数据监控:AI可以监控网站上的特定产品或新闻文章的更新。当有变化或特定产品重新上架时,它可以通知您。
  4. 批量下载数据:如果您需要从网站上下载多个文件或图像,AI代理可以为您处理,无需逐个点击每个文件。
  5. 社交媒体管理:您可以使用AI代理来安排帖子、与粉丝互动和监控内容,从而节省手动管理社交媒体的时间。

4、AI浏览器自动化的先决条件

在开始编写脚本和使用 BrowserUse 之前,您需要设置一些先决条件。

  1. Python:您需要在系统上安装 Python 3.9 或更高版本。Python 是用于编写 AI 代理的主要语言。
  2. 代码编辑器:您可以使用任何文本编辑器进行编码,但推荐使用 VS CodePyCharm 等 IDE 以便于使用。
  3. Playwright:这是 BrowserUse 依赖的浏览器自动化工具。您需要安装 Playwright 来以编程方式控制 Chrome 或 Firefox 浏览器。
  4. OpenAI 的 API 密钥:如果您使用 GPT-4 等语言模型,您需要在 OpenAI 的平台上注册并获取 API 密钥。

提示:如果您计划从具有强大反机器人保护的网站或需要大规模数据收集的网站上爬取数据,您可能需要考虑使用 代理服务住宅 IP 网络 以确保可靠性。例如,Bright Data 平台提供了一系列代理解决方案,可以帮助绕过地理限制或 IP 阻止,使您的自动化更加顺畅,特别是对于高级或商业用例。

5、设置 BrowserUse 用于自动化

一旦您设置了先决条件,就可以开始为自动化设置 BrowserUse。

5.1 创建新项目

首先,您需要创建一个新的项目目录并将其设置为 Python 开发。

打开终端或命令提示符并运行以下命令以创建新的项目目录:

poetry new browser-demo  
cd browser-demo

安装所需的依赖项:

poetry add browser-use

如果您不使用 Poetry,也可以直接使用 pip 安装 BrowserUse:

pip install browser-use

安装依赖项后,运行以下命令以安装 Playwright:

playwright install

5.2 设置环境变量

为了安全地管理您的 API 密钥,请在项目目录中创建一个 .env 文件并将您的 OpenAI API 密钥添加到其中:

OPENAI_API_KEY=YOUR_API_KEY_HERE

5.3 编写脚本

现在一切设置完毕,您可以编写一个 Python 脚本来自动化浏览器任务。这是一个基本脚本,供您开始使用:

from langchain_openai import ChatOpenAI  
from browser_use import Agent  
import asyncio  
from dotenv import load_dotenv  
load_dotenv()  
async def main():  
task = "Scrape product prices from Microcenter and send the results via email"  
agent = Agent(  
task=task,  
llm=ChatOpenAI(model="gpt-4o"),  
)  
await agent.run()  
input('Press Enter to close…')  
asyncio.run(main())

此脚本设置 AI 代理并定义一个简单的任务——从网站上爬取产品价格。您可以根据自己的具体需求修改此任务。

5.4 自定义浏览器以用于自动化

默认情况下,BrowserUse 带有一个通用的浏览器设置,但您可以自定义它以使用您现有的浏览器安装(如 Chrome)以实现更流畅的自动化。

以下是配置 BrowserUse 使用您的 Chrome 安装的方法:

from browser_use.browser.browser import Browser, BrowserConfig  
load_dotenv()  
chrome_path = r'C:\Program Files\Google\Chrome\Application\chrome.exe'  
browser = Browser(  
config=BrowserConfig(  
chrome_instance_path=chrome_path,  
)  
)  
async def main():  
task = "Scrape podcast microphone prices and send email"  
agent = Agent(  
task=task,  
llm=ChatOpenAI(model="gpt-4o"),  
browser=browser,  
)  
await agent.run()  
await browser.close()  
input('Press Enter to close…')  
asyncio.run(main())

通过使用您的浏览器,您可以确保其始终是最新的,并且还可以使用已保存的登录凭据以加快自动化进程。

5.5 编写有效的 AI 提示

成功的 AI 自动化的关键在于编写清晰、详细的提示。一个好的提示应将任务分解为较小的步骤,并明确指示下一步该做什么。例如,在爬取产品信息时,提示可能如下所示:

task = """  
### **AI Agent Task: Scrape Product Prices**  
1. Open [Microcenter](https://www.microcenter.com) and search for "podcast microphones."  
2. Extract the name, price, rating, and availability for the first five microphones listed.  
3. Summarize this data into a clean report.  
4. Send the report via email using Gmail.  
"""

AI 代理将逐步遵循这些指示,确保正确执行任务。

6、使用 Web UI 进行浏览器自动化

虽然直接在 Python 脚本中编写提示可能很繁琐,但您可以使用基于 Web 的 UI 来获得更友好的体验。

6.1 安装 Web UI

克隆 Web UI 仓库并安装必要的依赖项:

git clone https://github.com/browser-use/web-ui.git  
cd web-ui  
pip install -r requirements.txt

安装后,复制 .env.example 文件为 .env 并添加您的 OpenAI API 密钥。

6.2 运行 Web UI

要启动 Web UI,请运行以下命令:

python webui.py — ip 127.0.0.1 — port 7788

一旦 UI 运行,打开您的浏览器并转到 http://127.0.0.1:7788/ 以通过图形界面与 AI 代理进行交互。

7、示例:浏览电影院放映时间

以下是如何使用 BrowserUse 查找电影放映时间的示例:

task = """  
### **AI Agent Task: Find Cinema Showtimes for 'Flow' (Straume)**  
1. Open [Forum Cinemas Latvia](https://www.forumcinemas.lv/eng/).  
2. Navigate to the movie schedule and find the film 'Flow.'  
3. Extract available showtimes for tomorrow and list them.  
"""

您可以通过在提示框中输入此任务并点击“运行代理”来通过 Web UI 运行此任务。AI 代理将自动化浏览任务并为您提供一份放映时间列表。

8、结束语

结合 AI 的 BrowserUse 是一种强大的工具,可用于自动化浏览器交互。无论您是爬取数据、填写表单还是管理任务,它都可以节省您大量的时间和精力。只需一点设置和正确的提示,您就可以自动化几乎任何网络上的重复任务。

通过了解 AI 代理和浏览器自动化的基础知识,您可以利用这项技术来处理繁琐的工作并提高您的工作效率。祝您自动化愉快!


原文链接:BrowserUse: How to Use AI Browser Automation to Scrape Data

汇智网翻译整理,转载请标明出处