如果我们想将网页数据,转换能在 LangChain 应用里使用的文档,可以使用一些 Web Loader。
先试一下 CheerioWebBaseLoader 这个加载器,使用它需要额外给项目安装的一个包,在终端,项目所在目录的下面,执行 npm install 要安装的是 cheerio 这个包。它有功能有点像是在服务端使用的 jQuery。
回到项目,在这个 Node.js 程序文件的顶部导入一个 CheerioWebBaseLoader ,它来自 langchain/document_loaders/web/cheerio。
声明一个 cheerioWebBaseLoader,新建一个 CheerioWebBaseLoader,提供一个网址,比如 https://ninghao.net/course/9774。下面再声明一个 documents ,等于 await,用一下 cheerioWebBaseLoader.load() 这个方法,在控制台可以输出这个 documents。
在终端,执行一下 node index.mjs。这里会输出根据宁皓网的一个页面生成的一个文档。
如果你只需要页面里的一部分内容,可以写一个 css 选择器选中包含这块内容的元素。在创建 CheerioWebBaseLoader 的时候可以提供一个对象参数,里面添加一个 selector ,设置一下选择器,这个选择器的写法跟 CSS 里的选择器是一样的。比如我需要宁皓网的课程内容介绍,我知道在宁皓网的课程页面包装这块内容的元素是 .tab-content 下面的 p 标签。
在终端,执行一下 node index.mjs。这次你会发现,加载网页得到的这个文档,就会是课程页面的介绍内容。