Puppeteer 获取 querySelectorAll 的 innerText

问题描述

你好我已经有一个脚本,它通过父元素来获取它们的数据,我正在用 queryselector 来做,但有时父元素有几个我需要的子元素。所以我应该使用 querySelectorAll 但我在获取它们的 innerText 时遇到问题,希望得到帮助。

      suggestionText = await page.evaluate(
          (el) => el.querySelector('div.nine.columns.suggestiontext').innerText,text
        );
        console.log(suggestionText);

queryselector 的例子,但我只得到一个,我想得到更多,(文本是父)。

解决方法

您可以尝试使用 element.querySelectorAll() 并通过 Array.from() 返回一组文本:

suggestionTexts = await page.evaluate(
  (el) => Array.from(
    el.querySelectorAll('div.nine.columns.suggestiontext'),div => div.innerText,),text,);
console.log(suggestionTexts);