TL;DR
- LangChain 网络加载器应返回带有来源元数据的稳定文档;获取 HTML 仅是第一阶段。
- 对于小型静态公共来源,请使用 LangChain WebBaseLoader。在工作需要有限发现、JavaScript 渲染或可重用 Markdown 时,请使用 Nstdata Crawl。
- 将抓取、文档转换、分块和检索分开,以便访问失败不会悄无声息地变成空的 RAG 索引。
- 在每个文档中存储规范 URL、获取时间和内容哈希,以支持刷新、删除和调试。
LangChain 网络加载器实际做了什么
LangChain 网络加载器将网络资源转换为文档:内容加元数据,方便拆分、向量化和检索。官方的 WebBaseLoader 参考 对于简单页面非常有用,但它并不会自动进行呈现、发现或来源验证。对于生产边界,将加载器与 Nstdata Crawl 配对,并在 LangChain 看到它之前保留来源记录。
LangChain 网络加载器文档 在 JavaScript 中同样使这个边界可见:加载页面是一个摄取操作,而不是一个完整的爬虫策略。如果您需要那种受控的集合阶段,Nstdata Crawl 产品 记录了相关限制和输出格式。
对于一个生产知识库,决定性的问题是系统能否再现文本、识别其来源,并在页面更改时替换它。这需要规范 URL、任务或 HTTP 状态、获取时间、内容类型和标准化文本的哈希。
何时将 Nstdata Crawl 放在 LangChain 之前
Nstdata Crawl 更适合用于有限网站的第一阶段,而不是一个静态 URL。其当前产品页面描述了网站发现、JavaScript 渲染、深度和页面限制,以及包括 Markdown 和 HTML 在内的结构化输出。这些控制非常重要,因为 网络爬虫 否则可能会跟随分页、搜索页面和重复的查询字符串 URL,而没有一个有用的边界。
工作划分很简单:Crawl 获取并规范化允许的公共页面;LangChain 将接受的页面记录转换为文档,进行分块,并将它们连接到检索中。Crawl for RAG 指南 描述了检索决策,而 AI代理网络访问指南 解释了当前来源为何需要明确的限制和可观察性。
详细教程
方法 1:定义爬取合同
第 1 步:界定源
从一个授权的文档部分开始。设置一个入口 URL、明确的页面限制、抓取深度,并包括或排除规则。爬取是图遍历,而不是请求循环。
第 2 步:定义接受的页面
仅在记录具有非空主内容、规范 URL 和您的管道识别的成功状态时才接受记录。排除登录页面、同意墙、空的渲染外壳以及超出知识库范围的内容。
方法 2:将接受的 Markdown 转换为文档
下面的转换代码是示例。它在授权的 Crawl 请求返回形状为 url、markdown 和可选标题的接受记录后运行;不假设固定的 API 响应字段名称。





