[Puppeteer] 퍼펫티어의 브라우저를 크롬으로 변경하기[Puppeteer] 퍼펫티어의 브라우저를 크롬으로 변경하기
Posted at 2019. 4. 29. 11:33 | Posted in Node.js/Puppeteer■ 크로미엄 기반의 브라우저를 퍼펫티어로 제어하기
퍼펫티어는 기본적으로 node 모듈 설치시 같이 설치된 chromium 브라우저를 기반으로 실행된다.
단순한 작업이라면 기본 설치된 크로미움만을 이용해도 문제가 없겠지만.
사용자 인증 과 플러그인 설치등 몇가지 이유로 크로미움만을 사용하는 것에는 한계가 있다.
다행이 퍼펫티어는 구글에서 제공하는 라이브러리 답게 크로미움과 크롬 브라우저의 엔진인 WebKit을 사용하는
크로미엄을 기반으로 하는 모든 브라우저의 제어가 가능하다.
※ 크로미엄을 기반으로하는 브라우저 종류
브라우저 |
다운로드 사이트 URL |
크롬 |
|
오페라 |
|
비발디 |
|
브레이브 |
|
웨일 |
|
블리스크 |
TIP. 필자는 주력 브라우저로 파이어 폭스(FireFox)와 크롬(Chrome)을 사용중에 있다.
그래서 위 예제를 사용하기 위해서는 반드시 사용중인 크롬을 반드시 종료시키고 진행을 해야 했다.
테스트등 위 예제의 사용시에는 executablePath 실행 경로를 다른 WebKit 기반의 브라우저로 대체하여 작업을 하는것이
여러모로 스트레스를 덜 받을 것이다.
위의 필자가 정리한 브라우저들은 전부 필자가 설치하고 테스트 해본것이기에 원하는 브라우저를 다운받고 진행하는 것을 추천한다.
# 소스 코드
puppeteer_chrome.js |
const puppeteer = require("puppeteer"); function delay(timeout) { return new Promise((resolve) => { setTimeout(resolve, timeout); }); } puppeteer.launch({ headless : false , devtools : false
// 윈도우 크롬 자동 설치시 설치되는 경로 , executablePath : "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe"
// 윈도우 크롬 사용자 정보를 가지는 경로 , userDataDir : "C:/Users/사용자 계정/AppData/Local/Google/Chrome/User Data"
// 실행될 브라우저의 화면 크기를 지정한다. , defaultViewport : { width : 1920, height: 1080 } , args : [ ] }).then(async browser => {
const page = await browser.newPage(); await page.goto("https://mail.google.com/mail/u/0/#inbox", { waitUntil : "networkidle2" } ); await delay(5000);
await page.screenshot( { path : "Gmail_Login.png" } );
await browser.close(); }); |
# 노드 실행
C:> node puppeteer_chrome.js |
# 출력결과① - 브라우저
# 출력결과② - 스크린샷 이미지 파일
위 이미지와 같이 로그인 절차를 생략하고 바로 G메일 계정에 접근한 것을 확인 할 수 있다.
이 포스팅에서 퍼펫티어이 브라우저를 크롬으로 변경하고, 사용자 계정의 로그인 값을 가져갈 수 있음을 확인했다.
그렇다면 좀더 이어서 크롬의 장점이기도한 확장 플러그인의 사용까지 알아보자.
다음글 : [Puppeteer] 퍼펫티어에서 크롬 확장프로그램 사용하기
'Node.js > Puppeteer' 카테고리의 다른 글
[Puppeteer] Cheerio 모듈을 활용한 데이터 스크랩핑 (0) | 2019.06.20 |
---|---|
[Puppeteer] 페이지 클릭 및 입력 이벤트 (0) | 2019.05.10 |
[Puppeteer] 퍼펫티어에서 크롬 확장프로그램 사용하기 (2) | 2019.04.30 |
[Puppeteer] 퍼펫티어를 이용한 CRAWLING 작업 (0) | 2019.04.26 |
[Puppeteer] 퍼펫티어 설치 및 설정하기 (1) | 2019.04.23 |