7

我正在使用puppeteer。我想获取表的列名的值。

<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 值的数组。

你能帮我遍历这些值吗?

编辑:找到问题的答案并将其发布在答案部分。

4

1 回答 1

19

我能够使用以下方法获得解决方案:

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']
于 2017-09-09T09:21:10.497 回答