中文文档 (Readme chinês)
import * as cheerio from 'cheerio' ;
const $ = cheerio . load ( '<h2 class="title">Hello world</h2>' ) ;
$ ( 'h2.title' ) . text ( 'Hello there!' ) ;
$ ( 'h2' ) . addClass ( 'welcome' ) ;
$ . html ( ) ;
//=> <html><head></head><body><h2 class="title welcome">Hello there!</h2></body></html> npm install cheerio
Syntaxe Sintaxe comprovada: Cheerio implementa um subconjunto de JQuery Core. O Cheerio remove todas as inconsistências do DOM e o navegador Cruft da JQuery Library, revelando sua API verdadeiramente linda.
ϟ Buscamente rápido: o Cheerio trabalha com um modelo DOM muito simples e consistente. Como resultado, analisar, manipular e renderizar são incrivelmente eficientes.
❁ Incrivelmente flexível: o Cheerio envolve o parse5 para analisar HTML e pode opcionalmente usar o HTMLPARSER2 perdoador2. Cheerio pode analisar quase qualquer documento HTML ou XML. Cheerio funciona em ambientes de navegador e servidor.
Primeiro você precisa carregar no HTML. Esta etapa no jQuery está implícita, já que o jQuery opera em um Dom assado. Com o Cheerio, precisamos passar no documento HTML.
// ESM or TypeScript:
import * as cheerio from 'cheerio' ;
// In other environments:
const cheerio = require ( 'cheerio' ) ;
const $ = cheerio . load ( '<ul id="fruits">...</ul>' ) ;
$ . html ( ) ;
//=> <html><head></head><body><ul id="fruits">...</ul></body></html>Depois de carregar o HTML, você pode usar seletores de estilo jQuery para encontrar elementos no documento.
selector pesquisas no escopo do context que pesquisam no escopo root . selector e context podem ser uma expressão de string, elemento DOM, matriz de elementos DOM ou objeto Cheerio. root , se fornecido, normalmente é a sequência de documentos HTML.
Esse método seletor é o ponto de partida para atravessar e manipular o documento. Como no jQuery, é o principal método para selecionar elementos no documento.
$ ( '.apple' , '#fruits' ) . text ( ) ;
//=> Apple
$ ( 'ul .pear' ) . attr ( 'class' ) ;
//=> pear
$ ( 'li[class=orange]' ) . html ( ) ;
//=> Orange Quando estiver pronto para renderizar o documento, você pode chamar o método html na seleção "root":
$ . root ( ) . html ( ) ;
//=> <html>
// <head></head>
// <body>
// <ul id="fruits">
// <li class="apple">Apple</li>
// <li class="orange">Orange</li>
// <li class="pear">Pear</li>
// </ul>
// </body>
// </html> Se você deseja renderizar o outerHTML de uma seleção, você pode usar o suporte outerHTML :
$ ( '.pear' ) . prop ( 'outerHTML' ) ;
//=> <li class="pear">Pear</li> Você também pode renderizar o conteúdo de texto de um objeto Cheerio usando o método text :
const $ = cheerio . load ( 'This is <em>content</em>.' ) ;
$ ( 'body' ) . text ( ) ;
//=> This is content.As coleções de Cheerio são compostas de objetos que têm alguma semelhança com os nós DOM baseados no navegador. Você pode esperar que eles definam as seguintes propriedades:
tagNameparentNodepreviousSiblingnextSiblingnodeValuefirstChildchildNodeslastChildhttps://vimeo.com/31950192
Este tutorial em vídeo é um acompanhamento das páginas da Web da Nettut "Como raspar a web com node.js e jQuery", usando Cheerio em vez de JSDOM + JQuery. Este vídeo mostra como é fácil usar o Cheerio e o quanto o Cheerio é mais rápido que o JSDOM + JQuery.
Você está usando o Cheerio na produção? Adicione ao wiki!
Sua empresa usa Cheerio na produção? Por favor, considere patrocinar este projeto! Sua ajuda permitirá que os mantenedores dediquem mais tempo e recursos ao seu desenvolvimento e suporte.
Patrocinadores de destaque
Outros patrocinadores
Torne -se um patrocinador para mostrar seu apoio ao Cheerio e nos ajudar a manter e melhorar esse projeto de código aberto.
Mit