page.waitForNavigation();
ожидает навигации после click
или любого действия навигации, которое запускается со страницы. Возможно, вам следует добавить waitForNavigation после page.click.
await Promise.all([
page.click('#loginSubmit'),
page.waitForNavigation({ waitUntil: 'networkidle0' }),
]);
Он будет ждать разрешения обоих обещаний.
Так что теперь ваш исходный код будет выглядеть так:
const puppeteer = require('puppeteer');
async function main() {
const browser = await puppeteer.launch({headless: false});
const page = await browser.newPage();
await page.setViewport({width: 1200, height: 720})
await page.goto('https://www.daum.net', { waitUntil: 'networkidle0' }); // wait until page load
await page.type('#id', CREDS.username);
await page.type('#loginPw', CREDS.password);
// click and wait for navigation
await Promise.all([
page.click('#loginSubmit'),
page.waitForNavigation({ waitUntil: 'networkidle0' }),
]);
}
main();
Примечание: Ответьте в сторону, я не могу проверить это, так как у меня нет логина для daum.net
, и я не вижу фактическую ошибку, с которой вы столкнулись. Если вы можете попробовать решение, представленное выше, и поделиться результатами, это будет гораздо полезнее.