跳转到主要内容

HyperbrowserLoadTool

描述

HyperbrowserLoadTool 使用 Hyperbrowser(一个用于运行和扩展无头浏览器的平台)实现网页抓取和爬取。该工具允许您抓取单个页面或爬取整个网站,并以格式正确的 markdown 或 HTML 格式返回内容。 主要特性:
  • 即时扩展性 - 在数秒内启动数百个浏览器会话,无需担心基础设施问题
  • 简单集成 - 与 Puppeteer 和 Playwright 等流行工具无缝协作
  • 强大的 API - 易于使用的 API,用于抓取/爬取任何网站
  • 绕过反机器人措施 - 内置隐身模式、广告拦截、自动 CAPTCHA 解决和轮换代理

安装

要使用此工具,您需要安装 Hyperbrowser SDK
uv add hyperbrowser

开始步骤

要有效使用 HyperbrowserLoadTool,请遵循以下步骤
  1. 注册:前往 Hyperbrowser 注册并生成一个 API 密钥。
  2. API 密钥:设置 HYPERBROWSER_API_KEY 环境变量,或将其直接传递给工具的构造函数。
  3. 安装 SDK:使用上述命令安装 Hyperbrowser SDK。

示例

以下示例演示了如何初始化工具并使用它来抓取网站
代码
from crewai_tools import HyperbrowserLoadTool
from crewai import Agent

# Initialize the tool with your API key
tool = HyperbrowserLoadTool(api_key="your_api_key")  # Or use environment variable

# Define an agent that uses the tool
@agent
def web_researcher(self) -> Agent:
    '''
    This agent uses the HyperbrowserLoadTool to scrape websites
    and extract information.
    '''
    return Agent(
        config=self.agents_config["web_researcher"],
        tools=[tool]
    )

参数

HyperbrowserLoadTool 接受以下参数

构造函数参数

  • api_key:可选。您的 Hyperbrowser API 密钥。如果未提供,将从 HYPERBROWSER_API_KEY 环境变量中读取。

运行参数

  • url:必需。要抓取或爬取的网站 URL。
  • operation:可选。要在网站上执行的操作。可以是 ‘scrape’(抓取)或 ‘crawl’(爬取)。默认为 ‘scrape’。
  • params:可选。用于抓取或爬取操作的附加参数。

支持的参数

有关所有支持参数的详细信息,请访问

返回格式

该工具返回以下格式的内容
  • 对于抓取操作:页面的 markdown 或 HTML 格式内容。
  • 对于爬取操作:每个页面的内容由分隔符隔开,包括每个页面的 URL。

结论

HyperbrowserLoadTool 提供了一种强大的方式来抓取和爬取网站,处理反机器人措施、验证码等复杂场景。通过利用 Hyperbrowser 的平台,该工具使代理能够高效地访问和提取网页内容。