Skip to main content
兼容性:仅适用于 Node.js。
本笔记本提供了快速入门 PuppeteerWebBaseLoader 文档加载器 的概述。有关 PuppeteerWebBaseLoader 所有功能和配置的详细文档,请参阅 API 参考 Puppeteer 是一个 Node.js 库,提供了控制无头 Chrome 或 Chromium 的高级 API。您可以使用 Puppeteer 自动化网页交互,包括从需要 JavaScript 渲染的动态网页中提取数据。 如果您需要一个更轻量级的解决方案,并且要加载的网页不需要 JavaScript 渲染,可以使用 CheerioWebBaseLoader 替代。

概述

集成详情

加载器特性

设置

要使用 PuppeteerWebBaseLoader 文档加载器,您需要安装 @langchain/community 集成包以及 puppeteer 对等依赖项。

凭证

如果您希望获取模型调用的自动跟踪,还可以通过取消注释以下内容来设置您的 LangSmith API 密钥:

安装

LangChain PuppeteerWebBaseLoader 集成位于 @langchain/community 包中:

实例化

现在我们可以实例化模型对象并加载文档:

加载

选项

以下是使用 PuppeteerWebBaseLoaderOptions 接口可以传递给 PuppeteerWebBaseLoader 构造函数的参数说明:
  1. launchOptions:一个可选对象,指定传递给 puppeteer.launch() 方法的额外选项。这可以包括诸如 headless 标志(以无头模式启动浏览器)或 slowMo 选项(减慢 Puppeteer 的操作以便于跟踪)等选项。
  2. gotoOptions:一个可选对象,指定传递给 page.goto() 方法的额外选项。这可以包括诸如 timeout 选项(指定最大导航时间,单位为毫秒)或 waitUntil 选项(指定何时认为导航成功)等选项。
  3. evaluate:一个可选函数,可用于使用 page.evaluate() 方法在页面上执行 JavaScript 代码。这对于从页面提取数据或与页面元素交互非常有用。该函数应返回一个解析为包含评估结果的字符串的 Promise。
通过将这些选项传递给 PuppeteerWebBaseLoader 构造函数,您可以自定义加载器的行为,并利用 Puppeteer 的强大功能来抓取和与网页交互。

截图

要对网站进行截图,请像上面一样初始化加载器,并调用 .screenshot() 方法。 这将返回一个 Document 实例,其中页面内容是 base64 编码的图像,元数据包含一个带有页面 URL 的 source 字段。

API 参考

有关 PuppeteerWebBaseLoader 所有功能和配置的详细文档,请参阅 API 参考