Hyperbrowser
Hyperbrowser 是一个用于运行和扩展无头浏览器的平台。它允许您大规模启动和管理浏览器会话,并提供易于使用的解决方案以满足任何网页抓取需求,例如抓取单个页面或爬取整个网站。
关键特性:
- 即时可扩展性 - 在几秒钟内启动数百个浏览器会话,无需基础设施方面的烦恼
- 简单集成 - 与 Puppeteer 和 Playwright 等流行工具无缝协作
- 强大的 API - 易于使用的 API,用于抓取/爬取任何网站,以及更多功能
- 绕过反机器人措施 - 内置隐身模式、广告拦截、自动验证码解决和代理轮换
有关 Hyperbrowser 的更多信息,请访问 Hyperbrowser 网站,或者如果您想查看文档,可以访问 Hyperbrowser 文档。
安装与设置¶
要开始使用langchain-hyperbrowser,您可以使用 pip 安装该包:
pip install langchain-hyperbrowser
您应该通过设置以下环境变量来配置凭据:
HYPERBROWSER_API_KEY=<your-api-key>
请确保从 https://app.hyperbrowser.ai/ 获取您的 API Key
可用工具
Hyperbrowser 提供两大类工具,特别适用于:
- 从复杂网站进行网页抓取和数据提取
- 自动化重复的网页任务
- 与需要身份验证的Web应用程序交互
- 跨多个网站进行研究
- 测试 Web 应用程序
浏览器代理工具
Hyperbrowser 提供多种浏览器智能体工具。目前我们支持
- Claude 计算机使用
- OpenAI CUA
- 浏览器使用
你可以在此处查看更多详细信息 这里
浏览器使用工具
一个通用的浏览器自动化工具,可以通过自然语言指令处理各种网页任务。
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)
爬取工具
Crawl 工具使您能够从给定的 URL 开始遍历整个网站,并支持配置页面数量限制。
from langchain_hyperbrowser import HyperbrowserCrawlTool
tool = HyperbrowserCrawlTool()
result = tool.run({
"url": "https://example.com",
"max_pages": 2,
"scrape_options": {"formats": ["markdown"]}
})
print(result)
提取工具
提取工具利用人工智能从网页中基于预定义模式抽取结构化数据,非常适合数据抽取任务。
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)
文档加载器¶
HyperbrowserLoader 类在 langchain-hyperbrowser 中可轻松用于从单个页面或多个页面加载内容,也可爬取整个网站。
内容可以 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"]}}
)