Проблема в вашем коде заключается в том, что кукловод работает с Promises , что означает, что большинство функций будет возвращать Promise вместо значения напрямую. Это означает, что ваш эфир должен использовать затем функцию или await
операторы, чтобы получить значение.
Пример кода
module.exports = run = async () => {
const url = 'https://example.com';
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto(url);
return browser;
};
Обратите внимание, что функция теперь помечена как async
, что делает ее неявно возвращающей Обещание. Это означает, что нужно дождаться завершения функции run()
, вам придется вызывать ее из другой функции async
, например:
(async () {
const browser = await run();
})();