сохранение страницы в переменную в puppeteer не работает

#javascript #node.js #puppeteer #webautomation

#javascript #node.js #puppeteer #веб-автоматизация

Вопрос:

Я пытаюсь сохранить результат страницы в переменную, чтобы я мог использовать ее для доступа к другой странице, но столкнулся с ошибкой «TypeError: не удается прочитать свойство ‘waitForSelector’ неопределенного»

 const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('https://www.instagram.com/accounts/login/');
  await page.waitForSelector('input[name="username"]');
  await page.type('input[name="username"]', 'username');
  await page.type('input[name="password"]', 'password');
  const mainPage = await page.click('button[type="submit"]');
  await mainPage.pdf({path: 'page.pdf', format: 'A4'});
  mainPage.goto(https://www.instagram.com/direct/inbox/);
  mainPage.waitForSelector('button[name="Send Message"]');
  //some additional code
})();
  

Ответ №1:

page.click не возвращает страницу. Вы можете использовать waitForNavigation там.

 await Promise.all([
    page.waitForNavigation(),
    page.click('button[type="submit"]')]);