RecursiveUrlLoader 允许您从根URL递归抓取所有子链接,并将其解析为文档。
概述
集成详情
| 类 | 包 | 本地 | 可序列化 | JS支持 |
|---|---|---|---|---|
RecursiveUrlLoader | langchain-community | ✅ | ❌ | ✅ |
加载器特性
| 来源 | 文档惰性加载 | 原生异步支持 |
|---|---|---|
RecursiveUrlLoader | ✅ | ❌ |
设置
凭证
使用RecursiveUrlLoader 不需要任何凭证。
安装
RecursiveUrlLoader 位于 langchain-community 包中。没有其他必需的包,不过如果您也安装了 beautifulsoup4,您将获得更丰富的默认文档元数据。
实例化
现在我们可以实例化文档加载器对象并加载文档:加载
使用.load() 同步将所有文档加载到内存中,每个访问的URL对应一个文档。从初始URL开始,我们递归遍历所有链接的URL,直到达到指定的 max_depth。
让我们通过一个基本示例来了解如何在 Python 3.9 文档 上使用 RecursiveUrlLoader。
惰性加载
如果我们正在加载大量文档,并且我们的下游操作可以在所有已加载文档的子集上完成,我们可以一次惰性加载一个文档,以最小化内存占用:添加提取器
默认情况下,加载器将每个链接的原始HTML设置为文档页面内容。要将此HTML解析为更易于人类/LLM理解的格式,您可以传入一个自定义的extractor 方法:
metadata_extractor 来自定义如何从HTTP响应中提取文档元数据。有关更多信息,请参阅 API参考。
API参考
这些示例仅展示了修改默认RecursiveUrlLoader 的几种方式,但还有更多修改可以进行,以最好地适应您的用例。使用参数 link_regex 和 exclude_dirs 可以帮助您过滤掉不需要的URL,aload() 和 alazy_load() 可用于异步加载,等等。
有关配置和调用 RecursiveUrlLoader 的详细信息,请参阅 API参考。
将这些文档连接到Claude、VSCode等,通过MCP获取实时答案。

