Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error: Could not find browser revision 756035. Run "npm install"

My code is as follows:

 const browser = await puppeteer.launch({headless: params["headless"]});

 
    const page = await browser.newPage();
    await page.setJavaScriptEnabled(true);
    await page.setRequestInterception(true);
...

The issue is that I am unable to run it. I am getting following exception.

(node:7008) UnhandledPromiseRejectionWarning: Error: Could not find browser revision 756035. Run "npm install" or "yarn install" to download a browser binary.
    at ChromeLauncher.launch (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\node_modules\puppeteer\lib\Launcher.js:59:23)
    at async browse (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:126:19)
    at async tryExecute (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:73:5)
    at async sequentialFor (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:416:5)
    at async tryExecute (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:60:5)
    at async sequentialFor (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:416:5)
    at async tryExecute (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:60:5)
    at async httpBlock (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:268:5)
    at async tryExecute (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:64:5)
    at async sequentialFor (C:\Users\rpaadmin\.jenkins\workspace\ikinciyeni\generic_scrapper\main_2.0_temp.js:416:5)
(node:7008) 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(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)

How do I fix it ? It was working just fine before.

like image 535
Amna Arshad Avatar asked Jul 09 '20 17:07

Amna Arshad


3 Answers

If any of the above solutions don't work, in my case (running on ubuntu 16.04.3 LTS on a digitalocean droplet) this error was caused because npm refused to install chromium as a dependency of puppeteer. I don't know the cause of this behavior, but I've seen it reported elsewhere. I'm using the full version of puppeteer, not puppeteer-core.

What worked for me was to manually install chromium via npm:

npm install chromium

And then in my puppeteer script, explicitly set the executable:

puppeteer.launch({
  executablePath: './node_modules/chromium/lib/chromium/chrome-linux/chrome',
  // be sure to verify that this path matches your installation, but this is where npm put it in my node_modules directory
  // and of course include any other launch arguments you need here
});

But I'd sure love to know if there's a better solution than this.

like image 113
Andrew Toups Avatar answered Nov 20 '22 09:11

Andrew Toups


If anyone else is facing similar issue then delete node modules folder and run again. It will work

like image 36
Amna Arshad Avatar answered Nov 20 '22 08:11

Amna Arshad


No need to delete all node_modules folder

Run npm i puppeteer and it will update your revision of chromium

like image 3
Andrew Markhai Avatar answered Nov 20 '22 09:11

Andrew Markhai