Puppeteer - 变量未在评估函数中传递

Puppeteer - variable not getting passed in the evaluate function

我有一个函数,我试图从父节点获取子元素上的所有文本。

getTextsForChildElements: async function (selector) {
    const data = await page.evaluate(() => {
        const tds = Array.from(document.querySelectorAll(selector))
        return tds.map(td => td.textContent)
    },selector);
    console.log(data);
},

但是,我看到 selector is not defined错误。

尝试使用此 作为帮助,但没有解决。任何想法,我如何通过选择器。

作为 page.evaluate 的第一个参数的匿名函数应该接受您传递的参数。不对,它不接受任何争论。修改如下:

getTextsForChildElements: async function (selector) {
    const data = await page.evaluate((selector) => {
        const tds = Array.from(document.querySelectorAll(selector))
        return tds.map(td => td.textContent)
    },selector);
    console.log(data);
},