Puppeteer - page. $$('')。length返回undefined

时间:2018-06-05 16:03:49

标签: javascript node.js async-await puppeteer

我的代码出错,所以我尝试在错误的代码中记录该值。所以我做了:

const read = await page.$$('.Ns6lhs9 _gfh3').length;

然后我console.log(read);

出于某种原因,我得到了undefined,尽管HTML中有类名为'Ns6lhs9 _gfh3'的元素

2 个答案:

答案 0 :(得分:3)

$$返回元素的承诺,而length不是承诺,它是实际值。

应该是:

const read = (await page.$$('.Ns6lhs9 _gfh3')).length;

答案 1 :(得分:1)

我也遇到过类似的问题,即使用CSS选择器计数元素时获得0。我改为尝试使用xpath选择器,由于某种原因它确实起作用了。