Could not find expected browser (chrome) locally. Run `npm install` to download the correct Chromium revision (869685).
patrickbussmann opened this issue · 2 comments
patrickbussmann commented
My basic code:
const puppeteer = require('puppeteer-core');
exports.handler = async (event, context, callback) => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://google.de', {
waitUntil: 'networkidle2',
});
const content = await page.pdf({ format: 'a4' });
await browser.close();
callback(null, content);
};serverless.yml
chrome:
handler: handlers/htmlToPdf.handler
runtime: nodejs14.x
memorySize: 512
timeout: 30
layers:
- arn:aws:lambda:eu-central-1:764866452798:layer:chrome-aws-lambda:22And response.
{
"errorType": "Error",
"errorMessage": "Could not find expected browser (chrome) locally. Run `npm install` to download the correct Chromium revision (869685).",
"trace": [
"Error: Could not find expected browser (chrome) locally. Run `npm install` to download the correct Chromium revision (869685).",
" at ChromeLauncher.launch (/var/task/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.js:82:27)",
" at async Runtime.exports.handler (/var/task/handlers/htmlToPdf.js:4:21)"
]
}Would be nice when there is a solution 😊
patrickbussmann commented
OK needed to change the logic...
const chromium = require('chrome-aws-lambda');
const puppeteer = require('puppeteer-core');
exports.handler = async (event, context, callback) => {
const browser = await puppeteer.launch({
args: chromium.args,
defaultViewport: chromium.defaultViewport,
executablePath: await chromium.executablePath,
headless: chromium.headless,
ignoreHTTPSErrors: true,
});
const page = await browser.newPage();
await page.goto('https://google.de', {
waitUntil: 'networkidle0',
});
const content = await page.pdf({ format: 'a4' });
await browser.close();
callback(null, content);
};shivika24 commented
When
OK needed to change the logic...
const chromium = require('chrome-aws-lambda'); const puppeteer = require('puppeteer-core'); exports.handler = async (event, context, callback) => { const browser = await puppeteer.launch({ args: chromium.args, defaultViewport: chromium.defaultViewport, executablePath: await chromium.executablePath, headless: chromium.headless, ignoreHTTPSErrors: true, }); const page = await browser.newPage(); await page.goto('https://google.de', { waitUntil: 'networkidle0', }); const content = await page.pdf({ format: 'a4' }); await browser.close(); callback(null, content); };
When i tried this, getting this error --> TypeError: Cannot set property _preferredRevision of # which has only a getter
at PuppeteerNode.get _launcher [as _launcher]