[Puppeteer] 퍼펫티어에서 크롬 확장프로그램 사용하기[Puppeteer] 퍼펫티어에서 크롬 확장프로그램 사용하기

Posted at 2019. 4. 30. 16:59 | Posted in Node.js/Puppeteer
반응형




이전글: [Puppeteer] 퍼펫티어의 브라우저를 크롬으로 변경하기





필자는 프로젝트에서 사용할 크롤링 프로그램의 개발중 퍼펫티어에 대해서 알게 되었다.


개중 롬 확장프로그램을 통한 인증이 꼭 필요한 부분이 존재하였고.


이것때문에 많은 고생을 하였기에, 해당 포스팅을 찾아오신 분들은 그 부분을 손쉽게 넘어갈 수 있기를 바라는 마음에


퍼펫티어에서 롬 확장프로그램을 사용할 수 있는 방법을 정리하였다.







■ 크롬 확장프로그램의 설치 경로





크롬 웹스토어(https://chrome.google.com/webstore/category/extensions?hl=ko)에서 다운받은 크롬 확장프로그램들은


크롬에 로그인을 하지 않았을 경우를 기준으로


확장 프로그램은 Windows 10의 경우


C:\Users\사용자 폴더\AppData\Local\Google\Chrome\User Data\Default\Extensions\Default 경로에 설치된다.



맥(Mac OS X) or 리눅스(LINUX)등 다른 OS의 사용은 https://chromium.googlesource.com/chromium/src/+/master/docs/user_data_dir.md에서 확인할 수 있다.







위와같이 크롬 웹스토어에서 확장 프로그램을 한가지 설치해 보자.


이때 위 이미지처럼 자신의 크롬이 로그인된 상태인지 그렇지 않은지를 잘 확인해 둘 필요가 있다.


기본적으로 로그인을 하지 않은 상태라면 Default 폴더에 설치되지만


로그인을 한 사용자의 경우에는 Profile 임의로 주어지는 숫자 폴더에 설치되어 있을 것이다.









크롬 확장프로그램을 설치완료하고 설치된 폴더로 이동해 보자.









자신이 설치한 프로그램의 파일명을 확인하고 그안의 버전정보 까지의 경로가


이번 크롬 확장 프로그램까지 같이 샐행하는데 필요한 부분이다.
















■ 퍼펫티어에서 크롬 확장프로그램을 사용하기





이제 퍼펫티어를 이용하여 크롬 확장 프로그램을 사용해 보려 한다.


그렇지만 브라우저는 꼭 크롬을 사용할 필요는 없다.


크롬 확장프로그램의 사용이 가능한 크로미엄을 기반으로 하는 브라우저라고 하면


확장프로그램의 설치경로를 지정해 주는것만으로도 사용이 가능하기에


아래 예제는 기본 설치 모듈의 크로미움을 사용하였다.





# 소스 코드

 puppeteer_extensions.js

const puppeteer = require("puppeteer");


puppeteer.launch({

  headless : false


  // 크롬 확장프로그램의 정확하 설치경로만 알고 있다면

  // executablePath을 이용하여 꼭 크롬을 사용할 필요는 없다.

  // , executablePath : "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe"


          // 크롬 확장프로그램을 한개 이상 사용하는경우 콤마( , )로 각 프로그램을 구분하여 작성하여 준다.

, args : [

  "--disable-extensions-except=C:/첫번째 크롬 확장프로그램 설치경로/,C:/두번째 크롬 확장프로그램 설치경로/"

, "--load-extension=C:/첫번째 크롬 확장프로그램 설치경로/,C:/두번째 크롬 확장프로그램 설치경로/"

]

}).then(async browser => {

const page = await browser.newPage();

await page.goto("https://www.naver.com/", { waitUntil : "networkidle2" } );

});





크롬 확장프로그램을 한개 이상 실행하게 될 경우


콤마( , )를 구분자로 사용하여 이어서 경로를 작성해 주면 함께 사용할 수 있다.





# 출력 결과




위 출력결과와 같이 설치한 크롬 확장 프로그램이 잘 나타나는 것을 확인 할 수 있다.





반응형
//