반응형
export PUPPETEER_SKIP_DOWNLOAD=true

Puppeteer npm은 크로미움을 라이브러리 내에 다운로드하기 위해 시도를 하는데 이때 정상적으로 다운되지 않는 경우 해당 에러가 발생한다.

 

이러한 이유로는 네트워크 장애, 프록시 문제, 시스템 환경변수 등등 다양한 이유가 있을 수있다.

 

따라서 아래방법을 통해 크로미움을 다운받지 않도록 하고, 그냥 chrome path를 강제 설정하여 사용할 수 있다. 

 

✅ puppeteer을 받지 않고 puppeteer-core npm을 설치

const puppeteer = require('puppeteer-core');

Puppeteer

이 패키지는 Chromium 브라우저를 자동으로 다운로드하여 사용한다.

Puppeteer 패키지를 설치하면 내장 Chromium이 함께 설치되며 사용자가 별도로 Chromium을 설치할 필요가 없게 된다.

정상적으로 다운이 되면 상관없지만 이 부분에서 크로미움이 받아지지 않아 에러가 날 수 있다.

 

Puppeteer-Core

이 패키지는 Puppeteer의 경량 버전으로, 자동 다운로드된 Chromium을 포함하지 않는다.

따라서 Puppeteer-Core를 사용하면 시스템에 이미 설치된 Chrome 브라우저를 사용할 수 있습니다.

즉, chrome 실행 path를 수동으로 설정해주어 진행이 가능하다.

const puppeteer = require('puppeteer-core');

(async () => {
  const browser = await puppeteer.launch({
    executablePath: '경로/크롬실행파일.exe', // 크롬 실행 파일의 경로
  });
  const page = await browser.newPage();
  await page.goto('https://example.com');
  await page.screenshot({ path: 'example.png' });

  await browser.close();
})();
반응형