반응형
JavaScript 또는 Node.js에서 Puppeteer을 사용하던 소스를 TypeScript에서 사용하기 위해서는 약간의 수정이 필요한 경우가 있습니다.
개발하면서 수정이 필요했던 경우를 기록해 둡니다.
pkg
// JavaScript
process.pkg
// TypeScript
process.hasOwnProperty('pkg')
Puppeteer
Puppeteer을 사용한 소스를 pkg를 이용하여 패키징하는 방법입니다.
- node_modules\puppeteer\.local-chromium 하위에 있는 폴더를 pkg output 폴더 하위에 chromium 폴더를 생성하고 그 하위에 복사한다.
- 예) node_modules\puppeteer\.local-chromium\win64-674921 폴더를 bin\chromium\win64-674921로 복사
- 소스 작성
const isPkg = process.hasOwnProperty('pkg');
const chromiumExecutablePath = (isPkg ?
(puppeteer as any as puppeteer.PuppeteerNode).executablePath().replace(/^.*?\\node_modules\\puppeteer\\\.local-chromium/, path.join(path.dirname(process.execPath), 'chromium'))
:
(puppeteer as any as puppeteer.PuppeteerNode).executablePath()
);
const browser = await puppeteer.launch({ executablePath: chromiumExecutablePath });
위에서 보듯이 TypeScript에서 Puppeteer를 사용하기 위해 소스 수정이 필요한 부분은 아래글을 참고하시기 바랍니다.
TypeScript(타입스크립트)에서 Puppeteer 사용하기
JavaScript 또는 Node.js에서 Puppeteer을 사용하던 소스를 TypeScript에서 사용하기 위해서는 약간의 수정이 필요한 경우가 있습니다. 개발하면서 수정이 필요했던 경우를 기록해 둡니다. executablePath() // J
emptylife.net
반응형
'개발 > TypeScript' 카테고리의 다른 글
TypeScript(타입스크립트)에서 Puppeteer 사용하기 (0) | 2022.03.28 |
---|