cheeriojs官方API(翻译)

本文介绍了CheerioJS,一个为Node.js设计的快速、灵活的jQuery核心实现库。通过实例代码展示了如何引入模块、加载HTML内容,并探讨了选择器、属性操作等基本用法。
摘要由CSDN通过智能技术生成

昨天偶尔发现这么个用于nodejs抓取页面模块的一个库,官方介绍它说是一种为服务器特别定制的,快速、灵活、实施的jQuery核心实现。大致浏览了下,它的语法确实和jquery很像,所以觉得应该能很快就能上手的。

先上一段代码

let cheerio = require('cheerio')
let $ = cheerio.load('<h2 class="title">Hello world</h2>')

$('h2.title').text('Hello there!')
$('h2').addClass('welcome')

$.html()
//=> <h2 class="title welcome">Hello there!</h2>

第一步引入cheerio模块,第二步load加载某一部分你想要获得的数据。

下面开始进入学习:
官方使用一段简短的html代码来作为操作对象

<ul id="fruits">
  <li class="apple">Apple</li>
  <li class="orange">Orange</li>
  <li class="pear">Pear</li>
</ul>

加载这段有以下几种方式:

1.let cheerio = require('cheerio');
  let $ = cheerio.load('<ul id="fruits">...</ul>')
2.$ = require('cheerio');
  $('ul', '<ul id="fruits">...</ul>')
3.$ = require('cheerio');
  $('li', 'ul', '<ul id="fruits">...</ul>');

另外你也可以传递一个对象给load,可以更改它的默认参数

$ = cheerio.load('<ul id="fruits">...</ul>', {
    normalizeWhitespace: true,
    xmlMode: true
});

1.选择器 $( selector, [context], [root] )

$('.apple', '#fruits').text()
//=> Apple
$('ul .pear').attr('class')
//=>pear
$('li[class=orange]').html()
//=> Orange

2.属性

.attr( name, value )
如果你想获得元素某个属性,就不必写value,如果你想删除某个属性,value为null

$('ul').attr('id')
//=> fruits

$('.apple').attr('id', 'favorite').html()
//=> <li class="apple" id="favorite">Apple</li>

后序更新。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值