遍历元素数组以获取数据

时间:2019-11-09 12:48:14

标签: javascript node.js puppeteer

这是我第一次使用puppeteer,我在抓取方面需要一些帮助。

我正在尝试从Array元素列表中获取数据;首先,我应该单击第一个元素,获取标题,返回,然后单击array中的第二个元素,获取标题,返回,等等。

我尝试了许多方法,但是似乎没有一种方法对我有用。

await page.goto(url);
const result = await page.evaluate(() => {
    let title = Array.from(document.querySelectorAll('a[class="Fw(b)"]'))
        .map(prvi => prvi.textContent);
    console.log(title.length);
    return {
        title
    };
});
browser.close();
return result;


1 个答案:

答案 0 :(得分:1)

您可以这样做

const links = await page.$$('a[class="Fw(b)"]');

for(const link of links) {
    await link.click();
    const prop = await link.getProperty('textContent');
    console.log((await prop.jsonValue()));
}
``