HyperbrowserLoadTool

描述

HyperbrowserLoadTool 工具使用 Hyperbrowser 实现网页刮取和抓取。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: 可选。刮取或抓取操作的附加参数。

支持的参数

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

返回格式

该工具按以下格式返回内容

  • 对于 scrape(刮取)操作:页面内容以 Markdown 或 HTML 格式返回。
  • 对于 crawl(抓取)操作:每页内容用分隔符隔开,并包含每页的 URL。

结论

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