, поэтому я попробовал пример кода на документах кукловода https://pptr.dev/, и он не будет работать. у меня есть puppeteer 3.0.0, установленный через npm.
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://example.com');
await page.screenshot({path: 'example.png'});
await browser.close();
})();
, он запускается: UnhandledPromiseRejectionWarning: необработанное отклонение обещания. Эта ошибка возникла либо в результате выброса внутри асинхронной функции c без блока catch, либо в результате отклонения обещания, которое не было обработано с помощью .catch (). (код отклонения: 1)
, поэтому я попробовал этот код:
'use strict';
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
try {
await page.goto('https://example.com');
await page.screenshot({path: 'example.png'});
} catch (err) {
console.error(err.message);
} finally {
await browser.close();
}
})();
Редактировать: полная ошибка
(node:12856) UnhandledPromiseRejectionWarning: Error: Failed to launch chrome!
TROUBLESHOOTING: https://github.com/GoogleChrome/puppeteer/blob/master/docs/troubleshooting.md
at onClose (C:\Users\tim\Desktop\te\node_modules\puppeteer\lib\Launcher.js:348:14)
at ChildProcess.helper.addEventListener (C:\Users\tim\Desktop\te\node_modules\puppeteer\lib\Launcher.js:338:60)
at ChildProcess.emit (events.js:194:15)
at Process.ChildProcess._handle.onexit (internal/child_process.js:248:12)
(node:12856) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:12856) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a
non-zero exit code.PS C:\Users\tim\Desktop\te>
, но все равно выдает ту же ошибку. Что я сделал не так?