如何使用 cheerio 的 nodeJS 从 div 标签获取值

How to get a value from a div tag using cheerio's nodeJS

我正在使用 NodeJS 中的 cheeriorequest 制作网络抓取工具,但我无法从 div.

中获取特殊值

我将从这个 div 得到 'idproduit' 值 (223) :

<div class="vignette_footer js-vignette_footer" idproduit="223">

为此我正在做:(已编辑)

$('.vignettes_produit li').each(function(i, element) {

        var jsObject = { id: id++, idProduit: null};

        jsObject.idProduit = $(this).find('.vignette_footer).attr('idproduit');
});

但它给了我一个 undefined 结果。

有人知道我该怎么做吗?

更新:根据您的编辑,将 $('.vignettes_produit li') 更改为 $('li[class="vignettes_produit"]') 应该可以解决您的问题。例如:

let cheerio = require('cheerio')

let $ = cheerio.load('<ul><li class="vignettes_produit"><div class="vignette_footer js-vignette_footer" idproduit="223">1</div></li><li class="vignettes_produit"><div class="vignette_footer js-vignette_footer" idproduit="345">2</div></li><li class="vignettes_produit"><div class="vignette_footer js-vignette_footer" idproduit="456">3</div></li></ul>')

$('li[class="vignettes_produit"]').each(function(i, element) {
    console.log($(this).find('.vignette_footer').attr('idproduit'))
})