From 2447bd658ec359922901697f3edbe737c21d5a3f Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Fri, 15 Jul 2022 10:58:58 -0700 Subject: [PATCH] Use chrome-aws-lambda in GCF --- packages/puppeteer-parse/index.js | 68 +++++++++++++++++-------------- 1 file changed, 38 insertions(+), 30 deletions(-) diff --git a/packages/puppeteer-parse/index.js b/packages/puppeteer-parse/index.js index b71453387..50ab3edda 100644 --- a/packages/puppeteer-parse/index.js +++ b/packages/puppeteer-parse/index.js @@ -23,7 +23,8 @@ const { pdfHandler } = require('./pdf-handler'); const { mediumHandler } = require('./medium-handler'); const { derstandardHandler } = require('./derstandard-handler'); const { imageHandler } = require('./image-handler'); -const puppeteer = require('puppeteer-core'); +// const puppeteer = require('puppeteer-core'); +const chromium = require('chrome-aws-lambda'); // Add stealth plugin to hide puppeteer usage // const StealthPlugin = require('puppeteer-extra-plugin-stealth'); @@ -123,36 +124,43 @@ const userAgentForUrl = (url) => { // launch Puppeteer const getBrowserPromise = (async () => { - return puppeteer.launch({ - args: [ - '--allow-running-insecure-content', - '--autoplay-policy=user-gesture-required', - '--disable-component-update', - '--disable-domain-reliability', - '--disable-features=AudioServiceOutOfProcess,IsolateOrigins,site-per-process', - '--disable-print-preview', - '--disable-setuid-sandbox', - '--disable-site-isolation-trials', - '--disable-speech-api', - '--disable-web-security', - '--disk-cache-size=33554432', - '--enable-features=SharedArrayBuffer', - '--hide-scrollbars', - '--ignore-gpu-blocklist', - '--in-process-gpu', - '--mute-audio', - '--no-default-browser-check', - '--no-pings', - '--no-sandbox', - '--no-zygote', - '--use-gl=swiftshader', - '--window-size=1920,1080', - ].filter((item) => !!item), - defaultViewport: { height: 1080, width: 1920 }, - executablePath: process.env.CHROMIUM_PATH, - headless: !!process.env.LAUNCH_HEADLESS, - timeout: 0, + return chromium.puppeteer.launch({ + args: chromium.args, + defaultViewport: chromium.defaultViewport, + executablePath: await chromium.executablePath, + headless: chromium.headless, + ignoreHTTPSErrors: true, }); + // return puppeteer.launch({ + // args: [ + // '--allow-running-insecure-content', + // '--autoplay-policy=user-gesture-required', + // '--disable-component-update', + // '--disable-domain-reliability', + // '--disable-features=AudioServiceOutOfProcess,IsolateOrigins,site-per-process', + // '--disable-print-preview', + // '--disable-setuid-sandbox', + // '--disable-site-isolation-trials', + // '--disable-speech-api', + // '--disable-web-security', + // '--disk-cache-size=33554432', + // '--enable-features=SharedArrayBuffer', + // '--hide-scrollbars', + // '--ignore-gpu-blocklist', + // '--in-process-gpu', + // '--mute-audio', + // '--no-default-browser-check', + // '--no-pings', + // '--no-sandbox', + // '--no-zygote', + // '--use-gl=swiftshader', + // '--window-size=1920,1080', + // ].filter((item) => !!item), + // defaultViewport: { height: 1080, width: 1920 }, + // executablePath: process.env.CHROMIUM_PATH, + // headless: !!process.env.LAUNCH_HEADLESS, + // timeout: 0, + // }); })(); let logRecord, functionStartTime;