Cheerio如何忽略某个标签的元素

时间:2017-06-22 04:14:04

标签: node.js cheerio

我正在抓取网页的正文:

axios.get(url)
.then(function(response){
        var $ = cheerio.load(response.data);
        var body = $('body').text();
    });

问题是,我想从<footer>标记中排除内容。我该怎么做?

1 个答案:

答案 0 :(得分:2)

cheerio在解析HTML时会创建一个伪DOM。您可以操纵该DOM,类似于在浏览器中操作DOM的方式。在您的特定情况下,您可以使用任意数量的方法(例如

)从DOM中删除项目
 .remove()
 .replaceWith()
 .empty()
 .html()

所以,基本的想法是你会使用一个选择器来找到页脚元素,然后将其删除,如下所示:

$('footer').remove();

然后,在删除这些元素后获取文本:

var body = $('body').text();