회사 웹 서비스가 정상적으로 동작하는지, 자동화 점검을 하기 위해
웹 크롤링을 알아보았다.
Node.js 는 다양한 모듈을 제공하고 있는데 그중에서도
PhantomJS 와 CasperJS 를 활용하여 크롤링을 하였다.
PhantomJS : 화면이 없는 브라우저
CasperJS : PhantomJS를 쉽게 사용하기 위한 라이브러리
아래 모듈을 먼저 설치해야 한다.
1 2 3 4 | npm install freetype npm install fontconfig npm install phantomjs npm install casperjs | cs |
환경변수에 bin을 등록하여, 해당 명령어가 동작하도록 설정해줍니다.
vi .bashrc
export CASPER_HOME=/root_dir/node_modules/casperjs
export PHANTOM_HOME=/root_dir/node_modules/phantomjs
PATH=$PATH:$CASPER_HOME/bin
PATH=$PATH:$PHANTOM_HOME/bin
1. Casper 객체생성
var casper = require('casper').create();
2. 스타트
casper.start();
3. 페이지 열기
casper.open(url);
4. 스크린샷 수행
casper.then(function(){ casper.capture("A.png"); });
5. 실행
casper.run();
위와 같이 casper을 모듈로 불러와서
캡쳐를 실행하면, 구글 페이지가 캡쳐 된 것을 볼수 있다.
http://moonna.tistory.com/10
'배우고 있습니다 > Node.js 개발' 카테고리의 다른 글
[Node.js 개발일지] Connection lost: The server closed the connection. 에러 처리 (0) | 2018.12.14 |
---|---|
[node.js 활용기] 웹 크롤링 준비 (2) 에러편 (0) | 2018.12.11 |
[Node.js 개발일지] node.js에서 curl 처리 (ajax/request) (3) | 2018.12.06 |
[Node.js 개발일지] node.js 전역 변수, global 사용 (0) | 2018.12.06 |
[Node.js 개발일지] java / node-gyp 설치 오류 (0) | 2018.12.06 |