1

我想用 puppeteer 在输入中输入,但它返回错误:页面未定义

async function login(){
    const browser = await puppeteer.launch({headless: false});
    const page = await browser.newPage();
    await page.goto(url, {waitUntil: "networkidle2"});
    await page.evaluate(async() =>{
        await page.type('#i0116','prova', {delay:200})
        document.getElementById('idSIButton9').click();
    })
}

我不能使用'document.getElementById('i0116').value = 'prova';'

4

1 回答 1

4

您不能在 page.evaluate 中使用 page 或 page.type。

所以正确的做法是这样,

await page.type('#i0116','prova', {delay:200})
await page.evaluate(async() =>{
  document.getElementById('idSIButton9').click();
})

或使用 puppeteer 的原生 page.click api,

await page.type('#i0116','prova', {delay:200})
await page.click('#idSIButton9')
于 2020-07-17T12:58:53.557 回答