npm 包 superagent-scraper 使用教程

阅读时长 4 分钟读完

Superagent-scraper 是一个基于 Node.js 环境的网络爬虫工具,它使用了非常流行的 Superagent 库,以及 Cheerio 选择器来向信息提供者发出查询请求,并解析返回的 HTML 页面内容。

安装

我们可以使用 npm 快速地安装 superagent-scraper。

引入模块:

基本使用

此处我们以搜索百度动态内容为例,通过 superagent-scraper 进行爬取。

在上述代码中,我们首先向百度发出了一次查询请求,然后在回调函数中使用了 Cheerio 的选择器来取出 HTML 页面中的标题。

superagent-scraper 在请求结果回调函数中提供一个常用的回文参数,可以使用它将页面源代码作为 JQuery 对象返回。

选择器

Superagent-scraper 采用了 Cheerio 选择器来实现对选择器的支持,Cheerio 寻找元素的方式类似于 jQuery。

通过 Superagent-scraper 我们可以取出选择器的最常见元素(如id、class、标记名称),可以简单的使用 $(‘选择器’) 来得出结果。

例如我们想取出百度首页的最新新闻段落:

在上述代码中,我们首先向百度新闻发出了一次请求。然后使用了位于节点上的 class 选择器来取出最新新闻的列表。

当然,Superagent-scraper 也提供了更强大的选择器技巧。

在上述代码中,我们查询了网页中所有的 ul 标签,然后使用了 filter 过滤器找到了最新新闻节点。最后,遍历了所有的子节点,并输出了其文本内容。

处理响应

当我们请求了一个网页之后,我们可能会需要对返回的数据进行处理。在 Superagent 中,我们可以使用 .on('data',function(){}) 事件来达到目的。

例如,在下面的代码中,我们请求一个网页,找到响应数据中的一部分,然后在响应结束时打印它。

处理错误

在 Superagent-scraper 中,错误事件可以被回调处理。在请求到一个错误或响应出现错误时,我们可以使用下面的方法。

这里我们将错误信息打印出来,方便定位问题所在。

结束语

以上就是 Superagent-scraper 的一些基本用法介绍,希望对使用者有所帮助。本文重点讲解了选择器的用法、响应处理、错误处理等。在实际爬取数据时,还可以使用更多的 Superagent-scraper API 进行更深入的操作。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005571a81e8991b448d406f

纠错
反馈