首页 > 解决方案 > 获取行的单元格

问题描述

我成功地获取了表格的行,如下所示:

var rows = await page.evaluate(() => Array.from(document.querySelectorAll('.summary > tbody > tr'), element => $(element)))

如何将每行的子项作为数组获取?

我会... Array.from(rows[i].querySelectorAll(...吗?

我尝试了几种不同的方法,但我无法弄清楚。

标签: node.jspuppeteer

解决方案


我理解您的问题,因此您只想为表中存在的每一行获取分组为数组的单元格的值。如果这是正确的,那么你可以这样做:

  const rows = await page.evaluate(
    () => Array.from( document.querySelectorAll('table > tbody > tr') ) // Get the rows as an array
      .map(row => Array.from( row.querySelectorAll("td") ) // For each row get its cells as an array
      .map(td => td.textContent)) // Replace each cell in the latter array with its text
  )

推荐阅读