Javascript 如何获得剧作家的元素集合?

Javascript 如何获得剧作家的元素集合?,javascript,node.js,web-scraping,playwright,Javascript,Node.js,Web Scraping,Playwright,如何与剧作家一起获得页面上的所有图像? 我只能用以下代码获取一个(ElementHandle),但不能获取一个集合 const { chromium } = require("playwright"); class Parser { async parse(url) { const browser = await chromium.launch(); const page = await browser.newPage(); await page.goto(url)

如何与剧作家一起获得页面上的所有图像? 我只能用以下代码获取一个(
ElementHandle
),但不能获取一个集合

const { chromium } = require("playwright");

class Parser {
  async parse(url) {
    const browser = await chromium.launch();
    const page = await browser.newPage();
    await page.goto(url);
    await page.waitFor("img");
    // TODO: get somehow collection of elements
    return await page.$("img");
  }
}

module.exports = Parser;
在遥远的另一个模块中的某处:

const Parser = require("./path/to/dir/Parser.js");
const parser = new Parser();

parser
    .parse(body.url)
    .then(elemHandle => {
      // here I get only one ElementHandle object, but suppose to get an array or collection
    })
    .catch(err => {
      throw new Error(err);
    });

节点v.12.16.1

我已经找到了答案。需要使用
page.$$(选择器)
而不是
page.$(选择器)
来获取类似
文档的内容。querySelectorAll(选择器)
  • 剧作家使用:等待页面。$$(选择器)
如接受答案中所述,您可以使用
等待页面。$$(选择器)
。 这是一个

您还可以使用以下代码

const result = await page.evaluate(selector => document.querySelectorAll(selector) , selector);
这是一个