我知道这里已经回答了
Puppeteer - counting elements by class name
但是,按照这种方法,我得到的结果为0
使用page.$$
-在我的测试中,我总是得到0
console.log((await page.$$('.clients-table > tbody > tr > td')).length);
在浏览器中使用document.querySelectorAll()
进行了验证,结果为4
怎么可能??
答案 0 :(得分:1)
数据尚未加载。您可以使用waitForSelector
来确保正确加载数据。
所以只需在计算数字之前添加它,
await page.waitForSelector('.clients-table > tbody > tr > td');
console.log((await page.$$('.clients-table > tbody > tr > td')).length);
您还可以使用waitUntil: 'networkidle0'
参数来确保页面已完全加载。