首页 > 解决方案 > 如何使用 Puppeteer 从表格中获取可点击元素?

问题描述

我正在尝试抓取一个网站,并且有一个带有可点击元素和文本的表格。我设法使用它来获取表格元素的 innerText :

const result = await page.$$eval('tableselector tr', rows => {
    return Array.from(rows, row => {
      const columns = row.querySelectorAll('td');
      return Array.from(columns, column => column.innerText);
    });
});

我试过只是返回columns并使用result[row][column].getProperty('innerText').jsonValue()来尝试抓住innerText,但它不起作用。有人可以解释我哪里出错了吗?

编辑:这是一个 HTML 段,代表我要抓取的表的结构。

<table id = "table_id">
<body>
    <!-- input button is the clickable element I want to grab -->
    <tr class = "GridRowStyle">
        <td>input button</td><td>text2</td><td>text3</td><td>text4</td><td>text5</td><td>text6</td><td>text7</td>
    </tr>
    <tr class = "GridAlternatingStyle">
        <td>input button</td><td>text2</td><td>text3</td><td>text4</td><td>text5</td><td>text6</td><td>text7</td>
    </tr>
    <tr class = "GridRowStyle">
        <td>input button</td><td>text2</td><td>text3</td><td>text4</td><td>text5</td><td>text6</td><td>text7</td>
    </tr>
</body>

标签: javascriptweb-scrapingpuppeteerwebautomation

解决方案


推荐阅读