HyperbrowserLoader
Hyperbrowser 是一個用於執行和擴展無頭瀏覽器的平台。它讓您可以大規模啟動和管理瀏覽器會話,並為任何網路爬取需求提供易於使用的解決方案,例如爬取單個頁面或爬取整個網站。
主要特色
- 即時可擴展性 - 在幾秒鐘內啟動數百個瀏覽器會話,而無需基礎架構的麻煩
- 簡單整合 - 與 Puppeteer 和 Playwright 等熱門工具無縫協作
- 強大的 API - 易於使用的 API,用於爬取任何網站等等
- 繞過反機器人措施 - 內建隱身模式、廣告封鎖、自動 CAPTCHA 解決和輪換代理
此筆記本提供了 Hyperbrowser 文件載入器 入門的快速概觀。
有關 Hyperbrowser 的更多資訊,請訪問 Hyperbrowser 網站,或者如果您想查看文件,可以訪問 Hyperbrowser 文件。
概觀
整合詳細資訊
類別 | 套件 | 本地 | 可序列化 | JS 支援 |
---|---|---|---|---|
HyperbrowserLoader | langchain-hyperbrowser | ❌ | ❌ | ❌ |
載入器功能
來源 | 文件延遲載入 | 原生非同步支援 |
---|---|---|
HyperbrowserLoader | ✅ | ✅ |
設定
要存取 Hyperbrowser 文件載入器,您需要安裝 langchain-hyperbrowser
整合套件,並建立 Hyperbrowser 帳戶並取得 API 金鑰。
憑證
前往 Hyperbrowser 註冊並產生 API 金鑰。完成後,設定 HYPERBROWSER_API_KEY 環境變數
安裝
安裝 langchain-hyperbrowser。
%pip install -qU langchain-hyperbrowser
初始化
現在我們可以實例化我們的模型物件並載入文件
from langchain_hyperbrowser import HyperbrowserLoader
loader = HyperbrowserLoader(
urls="https://example.com",
api_key="YOUR_API_KEY",
)
載入
docs = loader.load()
docs[0]
Document(metadata={'title': 'Example Domain', 'viewport': 'width=device-width, initial-scale=1', 'sourceURL': 'https://example.com'}, page_content='Example Domain\n\n# Example Domain\n\nThis domain is for use in illustrative examples in documents. You may use this\ndomain in literature without prior coordination or asking for permission.\n\n[More information...](https://www.iana.org/domains/example)')
print(docs[0].metadata)
延遲載入
page = []
for doc in loader.lazy_load():
page.append(doc)
if len(page) >= 10:
# do some paged operation, e.g.
# index.upsert(page)
page = []
進階用法
您可以指定載入器要執行的操作。預設操作為 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"]}},
)