Skip to content

Commit 422795e

Browse files
committed
puppeteer core
1 parent 049ce65 commit 422795e

File tree

3 files changed

+23
-55
lines changed

3 files changed

+23
-55
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
"express": "^4.17.1",
3131
"html-minifier": "^4.0.0",
3232
"lighthouse": "^9.6.3",
33-
"puppeteer": "^24.8.2"
33+
"puppeteer-core": "^24.8.2"
3434
},
3535
"engines": {
3636
"node": ">=18.14.0"

src/run-lighthouse.js

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import lighthouse from 'lighthouse';
22
import chromeLauncher from 'chrome-launcher';
33
import log from 'lighthouse-logger';
4-
import puppeteer from 'puppeteer';
5-
import { install } from '@puppeteer/browsers';
4+
import puppeteer from 'puppeteer-core';
65

76
export const runLighthouse = async (url, settings) => {
87
let chrome;
@@ -23,28 +22,24 @@ export const runLighthouse = async (url, settings) => {
2322
handleSIGINT: true,
2423
};
2524

26-
// Install Chrome if needed and get its path
25+
// Launch Chrome using puppeteer-core
2726
try {
28-
console.log('Installing Chrome via puppeteer...');
29-
await install({
30-
browser: 'chrome',
31-
buildId: 'stable'
32-
});
33-
27+
console.log('Launching Chrome with puppeteer-core...');
3428
const browser = await puppeteer.launch({
29+
channel: 'chrome',
3530
headless: 'new',
3631
args: ['--no-sandbox', '--disable-gpu', '--disable-dev-shm-usage']
3732
});
38-
33+
3934
const browserPath = browser.executablePath();
40-
console.log(`Using Chrome from puppeteer: ${browserPath}`);
41-
launchOptions.chromePath = browserPath;
4235
await browser.close();
36+
37+
console.log(`Found Chrome at: ${browserPath}`);
38+
launchOptions.chromePath = browserPath;
4339
} catch (error) {
44-
console.log('Error installing/launching Chrome:', error.message);
45-
// Fallback to environment variable if puppeteer's Chrome is not available
40+
console.log('Error launching Chrome with puppeteer:', error.message);
4641
if (process.env.CHROME_PATH) {
47-
console.log(`Using Chrome from environment: ${process.env.CHROME_PATH}`);
42+
console.log(`Falling back to CHROME_PATH: ${process.env.CHROME_PATH}`);
4843
launchOptions.chromePath = process.env.CHROME_PATH;
4944
} else {
5045
console.log('Letting chrome-launcher find Chrome...');

yarn.lock

Lines changed: 12 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -2095,16 +2095,6 @@ cosmiconfig@^8.0.0:
20952095
parse-json "^5.2.0"
20962096
path-type "^4.0.0"
20972097

2098-
cosmiconfig@^9.0.0:
2099-
version "9.0.0"
2100-
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-9.0.0.tgz#34c3fc58287b915f3ae905ab6dc3de258b55ad9d"
2101-
integrity sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==
2102-
dependencies:
2103-
env-paths "^2.2.1"
2104-
import-fresh "^3.3.0"
2105-
js-yaml "^4.1.0"
2106-
parse-json "^5.2.0"
2107-
21082098
create-jest@^29.7.0:
21092099
version "29.7.0"
21102100
resolved "https://registry.yarnpkg.com/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320"
@@ -2488,11 +2478,6 @@ enquirer@^2.3.6:
24882478
ansi-colors "^4.1.1"
24892479
strip-ansi "^6.0.1"
24902480

2491-
env-paths@^2.2.1:
2492-
version "2.2.1"
2493-
resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2"
2494-
integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==
2495-
24962481
error-ex@^1.3.1:
24972482
version "1.3.2"
24982483
resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
@@ -5551,18 +5536,6 @@ punycode@^2.1.0, punycode@^2.1.1:
55515536
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
55525537
integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
55535538

5554-
5555-
version "24.8.2"
5556-
resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-24.8.2.tgz#f3e939e39e001d9933e79d980371e380d9e535c1"
5557-
integrity sha512-wNw5cRZOHiFibWc0vdYCYO92QuKTbJ8frXiUfOq/UGJWMqhPoBThTKkV+dJ99YyWfzJ2CfQQ4T1nhhR0h8FlVw==
5558-
dependencies:
5559-
"@puppeteer/browsers" "2.10.4"
5560-
chromium-bidi "5.1.0"
5561-
debug "^4.4.0"
5562-
devtools-protocol "0.0.1439962"
5563-
typed-query-selector "^2.12.0"
5564-
ws "^8.18.2"
5565-
55665539
puppeteer-core@^13.7.0:
55675540
version "13.7.0"
55685541
resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-13.7.0.tgz#3344bee3994163f49120a55ddcd144a40575ba5b"
@@ -5581,6 +5554,18 @@ puppeteer-core@^13.7.0:
55815554
unbzip2-stream "1.4.3"
55825555
ws "8.5.0"
55835556

5557+
puppeteer-core@^24.8.2:
5558+
version "24.8.2"
5559+
resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-24.8.2.tgz#f3e939e39e001d9933e79d980371e380d9e535c1"
5560+
integrity sha512-wNw5cRZOHiFibWc0vdYCYO92QuKTbJ8frXiUfOq/UGJWMqhPoBThTKkV+dJ99YyWfzJ2CfQQ4T1nhhR0h8FlVw==
5561+
dependencies:
5562+
"@puppeteer/browsers" "2.10.4"
5563+
chromium-bidi "5.1.0"
5564+
debug "^4.4.0"
5565+
devtools-protocol "0.0.1439962"
5566+
typed-query-selector "^2.12.0"
5567+
ws "^8.18.2"
5568+
55845569
55855570
version "18.1.0"
55865571
resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-18.1.0.tgz#7fa53b29f87dfb3192d415f38a46e35b107ec907"
@@ -5598,18 +5583,6 @@ [email protected]:
55985583
unbzip2-stream "1.4.3"
55995584
ws "8.9.0"
56005585

5601-
puppeteer@^24.8.2:
5602-
version "24.8.2"
5603-
resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-24.8.2.tgz#3ee6cfe74e4cc8dc4dd5cb4b553f4d4416df935f"
5604-
integrity sha512-Sn6SBPwJ6ASFvQ7knQkR+yG7pcmr4LfXzmoVp3NR0xXyBbPhJa8a8ybtb6fnw1g/DD/2t34//yirubVczko37w==
5605-
dependencies:
5606-
"@puppeteer/browsers" "2.10.4"
5607-
chromium-bidi "5.1.0"
5608-
cosmiconfig "^9.0.0"
5609-
devtools-protocol "0.0.1439962"
5610-
puppeteer-core "24.8.2"
5611-
typed-query-selector "^2.12.0"
5612-
56135586
pure-rand@^6.0.0:
56145587
version "6.0.4"
56155588
resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.4.tgz#50b737f6a925468679bff00ad20eade53f37d5c7"

0 commit comments

Comments
 (0)