본문 바로가기
개발/Nodejs

노드 크롤러 강좌

by dev_caleb 2022. 8. 16.
728x90

크롤링이 필요한데 firebase function으로 연동하려고 하다보니,

노드크롤러. 강좌 inflean 에서 ZEROCHO님의 노드- 크롤러 강좌가 적합하다고 생각하여 수강하게 되었다!

사실 외주 줄 지 내가 할 지 고민했는데, 

배워놓으면 여러모로 쓸모가 있을 것 같아서 수강하게 되었다! 

 

첫번째 프로젝트를 했는데, 오류가 났고, 이게 library가 업데이트 생기면서 생긴 문제라는 것을 파악했다.

첫번째 csv parser를 다음과 같이 고쳤더니 동작하였다. 

 

index.js

const parse = require('csv-parse/sync');
const fs = require('fs');

const csv = fs.readFileSync('csv/data.csv');
const records = parse.parse(csv.toString('utf-8'));
records.forEach((r, i) => {
console.log(i,r);
});
 
 
data.csv
타이타닉,https://movie.naver.com/movie/bi/mi/basic.nhn?code=18847
아바타,https://movie.naver.com/movie/bi/mi/basic.nhn?code=62266
매트릭스,https://movie.naver.com/movie/bi/mi/basic.nhn?code=24452
반지의 제왕,https://movie.naver.com/movie/bi/mi/basic.nhn?code=31794
어벤져스,https://movie.naver.com/movie/bi/mi/basic.nhn?code=72363
겨울왕국,https://movie.naver.com/movie/bi/mi/basic.nhn?code=100931
트랜스포머,https://movie.naver.com/movie/bi/mi/basic.nhn?code=61521
해리 포터,https://movie.naver.com/movie/bi/mi/basic.nhn?code=30688
다크나이트,https://movie.naver.com/movie/bi/mi/basic.nhn?code=62586
캐리비안의 해적,https://movie.naver.com/movie/bi/mi/basic.nhn?code=37148
 

axios , cheerio 연계해서 하는 것은 뭔가 자바에서 jsoup과 비슷한 정적 페이지 크롤링하는 데 좋은 느낌이었다.

puppeteer는 동적 크롤링이라던지 좀 더 다양한 기능을 제공해주는 느낌이다. 

 

(화이팅!!)

728x90