如何使用 puppeteer 获取 html 元素的所有子元素值
How to get all the child elements values of an html element using puppeteer
我正在使用 puppeteer。我想获取 table.
的列名的值
<tbody>
<tr class="GridHeader" align="center" style="background-color:Black;">
<td class="HeaderStyleOfdatalist">XYZ</td>
<td>0500</td>
<td>0550</td>
<td>0600</td>
<td>0650</td>
</tr>
</tbody>
我需要得到的是这些 td 值的数组。
我尝试了 page.$(selector) 但无法理解输出。
我也试过:
let idAttribute = await page.$eval('.GridHeader', e => e.childNodes);
console.log(idAttribute)
但无法获取这些 td 值的数组。
你能帮我循环这些值吗?
编辑:找到问题的答案并将其张贴在答案部分。
我能够使用以下方法获得解决方案:
const data = await page.evaluate(() => {
const tds = Array.from(document.querySelectorAll('.GridHeader td'))
return tds.map(td => td.textContent)
});
console.log(data) // ['xyz', '0500', '0550','0600', '0650']
我正在使用 puppeteer。我想获取 table.
的列名的值<tbody>
<tr class="GridHeader" align="center" style="background-color:Black;">
<td class="HeaderStyleOfdatalist">XYZ</td>
<td>0500</td>
<td>0550</td>
<td>0600</td>
<td>0650</td>
</tr>
</tbody>
我需要得到的是这些 td 值的数组。 我尝试了 page.$(selector) 但无法理解输出。 我也试过:
let idAttribute = await page.$eval('.GridHeader', e => e.childNodes);
console.log(idAttribute)
但无法获取这些 td 值的数组。
你能帮我循环这些值吗?
编辑:找到问题的答案并将其张贴在答案部分。
我能够使用以下方法获得解决方案:
const data = await page.evaluate(() => {
const tds = Array.from(document.querySelectorAll('.GridHeader td'))
return tds.map(td => td.textContent)
});
console.log(data) // ['xyz', '0500', '0550','0600', '0650']