快速上手 Cheerio

4fe280b1456955c04c397fce7725d690.png

Cheerio是一个基于JQuery核心的高性能快速灵活的HTML抓取的实现方案。它使用了一个选择器类似于jQuery的硬而快的DOM实现,同时支持核心的DOM操作方式。

Cheerio使用和jQuery相同的DOM操作 API。所以,如果你已经对jQuery非常熟悉了,学习学习Cheerio的语法就会变得十分容易。

使用Cheerio可以方便地从HTML代码中提取出数据,并进行数据分析或清洗等操作。在Node.js中,可以通过NPM安装Cheerio模块。

如下是Cheerio的用法:

1.安装Cheerio模块:

npm install cheerio

2.引入Cheerio模块:

const cheerio = require('cheerio');

3.使用load函数将HTML代码传入Cheerio解析器:

const $ = cheerio.load('<html>...</html>');

4.使用Cheerio提供的DOM API进行数据抽取或处理:

const title = $('title').text();
$("a").each(function(i, elem) {
    console.log($(this).attr("href"));
});

Cheerio支持的DOM操作方式有:查找元素、获取属性、修改属性、添加删除元素、获取和设置内容等。具体可以参考官方文档:https://github.com/cheeriojs/cheerio

Cheerio返回的是一个特殊的Cheerio对象,也称为选择器对象。该对象封装了一个DOM元素数组,并提供了一些对DOM元素进行操作、查找和筛选的方法,使得我们可以方便地使用jQuery风格的语法来操作HTML文档。

该对象具有以下特点:

1、可以使用链式调用,使得多个操作可以组合在一起。

2、可以直接访问单个元素的属性和方法,如.attr(), .text()等。

3、可以使用.first(), .last(), .eq()等方法获取集合中的指定元素。

4、可以使用数组下标或迭代器访问集合中的元素。

总之,Cheerio返回的对象提供了非常多的操作和查询DOM元素的方法,可以方便地处理和操作HTML文档。

$('h1, h2, h3, h4, h5, h6').each((index, item) => {
    console.log($(item).attr('id'))
})

在这段代码中,item表示选择器对象中的DOM元素,但是它并不是真正的DOM元素,而是Cheerio对象,其并不具备使用原生JavaScript操作DOM对象的所有方法,例如使用item.getAttribute('id')或item.id获取元素ID都将会报错,因为Cheerio对象没有这些方法。

在这里,使用$(item)将Cheerio对象转换为jQuery对象,从而可以调用jQuery提供的.attr()方法获取元素的ID属性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值