Hyperbrowser
Hyperbrowser 是一个用于运行和扩展无头浏览器的平台。它允许您大规模启动和管理浏览器会话,并为任何网页抓取需求提供易于使用的解决方案,例如抓取单个页面或抓取整个站点。
主要功能
- 即时可伸缩性 - 在几秒钟内启动数百个浏览器会话,无需基础设施烦恼
- 简单集成 - 与 Puppeteer 和 Playwright 等流行工具无缝协作
- 强大的 API - 易于使用的 API,用于抓取/爬取任何网站等
- 绕过反机器人措施 - 内置隐身模式、广告拦截、自动验证码解决和轮换代理
有关 Hyperbrowser 的更多信息,请访问 Hyperbrowser 网站,如果您想查看文档,可以访问 Hyperbrowser 文档。
安装与设置
要开始使用 langchain-hyperbrowser
,您可以使用 pip 安装包
pip install langchain-hyperbrowser
您应该通过设置以下环境变量来配置凭据
HYPERBROWSER_API_KEY=<您的 API 密钥>
请务必从 https://app.hyperbrowser.ai/ 获取您的 API 密钥
可用工具
Hyperbrowser 提供两类主要工具,这些工具特别适用于:
- 从复杂网站进行网页抓取和数据提取
- 自动化重复的网页任务
- 与需要身份验证的 Web 应用程序进行交互
- 跨多个网站执行研究
- 测试 Web 应用程序
浏览器代理工具
Hyperbrowser 提供了许多浏览器代理工具。目前我们支持:
- Claude Computer Use
- OpenAI CUA
- Browser Use
您可以在此处查看更多详细信息
浏览器使用工具
一个通用的浏览器自动化工具,可以通过自然语言指令处理各种网络任务。
from langchain_hyperbrowser import HyperbrowserBrowserUseTool
tool = HyperbrowserBrowserUseTool()
result = tool.run({
"task": "Go to npmjs.com, find the React package, and tell me when it was last updated"
})
print(result)
OpenAI CUA 工具
利用 OpenAI 的计算机使用代理功能进行高级网络交互和信息收集。
from langchain_hyperbrowser import HyperbrowserOpenAICUATool
tool = HyperbrowserOpenAICUATool()
result = tool.run({
"task": "Go to Hacker News and summarize the top 5 posts right now"
})
print(result)
Claude 计算机使用工具
利用 Anthropic 的 Claude 进行复杂的网页浏览和信息处理任务。
from langchain_hyperbrowser import HyperbrowserClaudeComputerUseTool
tool = HyperbrowserClaudeComputerUseTool()
result = tool.run({
"task": "Go to GitHub's trending repositories page, and list the top 3 posts there right now"
})
print(result)
网页抓取工具
以下是 Hyperbrowser 可用的网页抓取工具的简要描述。您可以在此处查看更多详细信息
抓取工具
抓取工具允许您以 Markdown、HTML 或链接格式从单个网页提取内容。
from langchain_hyperbrowser import HyperbrowserScrapeTool
tool = HyperbrowserScrapeTool()
result = tool.run({
"url": "https://example.com",
"scrape_options": {"formats": ["markdown"]}
})
print(result)
爬取工具
爬取工具使您能够从给定 URL 开始遍历整个网站,并可配置页面限制。
from langchain_hyperbrowser import HyperbrowserCrawlTool
tool = HyperbrowserCrawlTool()
result = tool.run({
"url": "https://example.com",
"max_pages": 2,
"scrape_options": {"formats": ["markdown"]}
})
print(result)
提取工具
提取工具使用 AI 根据预定义的模式从网页中提取结构化数据,非常适合数据提取任务。
from langchain_hyperbrowser import HyperbrowserExtractTool
from pydantic import BaseModel
class SimpleExtractionModel(BaseModel):
title: str
tool = HyperbrowserExtractTool()
result = tool.run({
"url": "https://example.com",
"schema": SimpleExtractionModel
})
print(result)
文档加载器
langchain-hyperbrowser
中的 HyperbrowserLoader
类可以轻松用于加载单个页面或多个页面的内容,以及抓取整个站点。内容可以加载为 Markdown 或 HTML 格式。
from langchain_hyperbrowser import HyperbrowserLoader
loader = HyperbrowserLoader(urls="https://example.com")
docs = loader.load()
print(docs[0])
高级用法
您可以指定加载器要执行的操作。默认操作是 scrape
。对于 scrape
,您可以提供单个 URL 或要抓取的 URL 列表。对于 crawl
,您只能提供单个 URL。crawl
操作将抓取提供的页面和子页面,并为每个页面返回一个文档。
loader = HyperbrowserLoader(
urls="https://hyperbrowser.ai", api_key="YOUR_API_KEY", operation="crawl"
)
加载器的可选参数也可以在 params
参数中提供。有关支持参数的更多信息,请访问 https://docs.hyperbrowser.ai/reference/sdks/python/scrape#start-scrape-job-and-wait 或 https://docs.hyperbrowser.ai/reference/sdks/python/crawl#start-crawl-job-and-wait。
loader = HyperbrowserLoader(
urls="https://example.com",
api_key="YOUR_API_KEY",
operation="scrape",
params={"scrape_options": {"include_tags": ["h1", "h2", "p"]}}
)