木偶无法识别字符串

时间:2020-08-30 18:33:38

标签: javascript node.js puppeteer

const puppeteer = require('puppeteer')

async function test() {
    // adjustment 1:
    const browser = await puppeteer.launch({
        headless: false,
        defaultViewport: null,
        args: ['--start-maximized', '--no-sandbox']
    });
    const page = await browser.newPage();
    await page.goto('https://cod.tracker.gg/warzone/profile/psn/xRUFFRYDERX/overview')

    await page.waitForSelector('#app > div.trn-wrapper > div.trn-container > div > main > div.content.no-card-margin > div.site-container.trn-grid.trn-grid--vertical.trn-grid--small > div:nth-child(2) > div > div.trn-grid__sidebar-right > div > div');
    const level = await page.$eval('#app > div.trn-wrapper > div.trn-container > div > main > div.content.no-card-margin > div.site-container.trn-grid.trn-grid--vertical.trn-grid--small > div:nth-child(2) > div > div.trn-grid__sidebar-right > div > div > div.highlighted.highlighted--giants > div > div > div.highlight-text')
    console.log(level);
}
test();

我正在尝试创建一个COD跟踪器远程工具,但仍然收到以下错误,我认为它无法将级别变量解释为字符串,但是我不确定为什么? (node:20216) UnhandledPromiseRejectionWarning: Error: Expected to get |string| or |function| as the first argument, but got "undefined" instead.

1 个答案:

答案 0 :(得分:0)

您错过了page.$eval的整个pageFunction

page。$ eval(selector,pageFunction [,... args])

要检索其内容,您需要将其添加为第二个参数,例如:el => el.innerText

注意:我对您的长选择器进行了一些修剪,但是无论如何它将返回相同的结果。

const level = await page.$eval('div.highlight-text', el => el.innerText)