반응형

CRAWL 4

[Node js]웹 크롤러 만들기3(번외)-데이터 시각화(워드 클라우드) D3 Cloud

👓크롤링한 데이터 시각화 이번 글은 크롤링 기능 자체랑은 연관이 없지만 하면 좋은 데이터 시각화 만들기이다. 크롤링해서 얻은 데이터도 좋지만, 이를 시각화하는 게 사용자에게 내용을 전달하고자 할 때 효과가 좋다. 시각화를 위해서 d3-cloud 라이브러리를 사용할 것이다. 시각화 라이브러리 d3-cloud : https://github.com/jasondavies/d3-cloud 🛠데이터 가공(포맷 수정) d3-cloud 라이브러리에 데이터를 넣기 위해 csv 형식으로 데이터를 가공해줄 것이다. 이전 글에서는 최종 데이터를 Object형식의 문자열로 저장했다. 이 데이터들을 csv형식에 맞게 바꿔주자. const fs = require('fs'); const path = require('path'); c..

개발/Node js 2021.10.11

[Node js]웹 크롤러 만들기2-웹 페이지 정보 추출 (형태소 분석기를 이용하여 단어 추출)

📢이 글에서 구현할 내용 우리는 먼저 특정 URL을 Seed(시작 위치)로 입력받는다. 해당 URL의 HTML을 긁어온다. 긁어온 페이지에 있는 URL들을 수집한다.(URL은 중복 제거한다.) 깊이 우선 탐색 또는 넓이 우선 탐색 방법으로 "2."와 "3."을 반복한다. 시작 위치와 연관되지 않는다고 판단되면 더는 진행하지 않는다. 기어 다니는(크롤링) 행위를 다하고 나서 정리한 URL 테이블을 하나씩 방문해서 HTML 정보를 받아온다. 형태소 분석기를 사용해서 HTML에서 단어들을 추출하여 정리한다. 위 순서는 "웹 크롤러 만들기 0"에서 정리한 내용이다. 파란색으로 칠한 부분을 이번 글에서 구현해보자. 🎤형태소 분석(mecab-ya) mecab은 리눅스, 맥 환경에서는 문제없이 설치/사용할 수 있지만..

개발/Node js 2021.10.11

[Node js]웹 크롤러 만들기1-웹 페이지 기어 다니기-BFS 넓이 우선 탐색(Crawl+Scrape)

📢이 글에서 구현할 내용 우리는 먼저 특정 URL을 Seed(시작 위치)로 입력받는다. 해당 URL의 HTML을 긁어온다. 긁어온 페이지에 있는 URL들을 수집한다.(URL은 중복 제거한다.) 깊이 우선 탐색 또는 넓이 우선 탐색 방법으로 "2."와 "3."을 반복한다. 시작 위치와 연관되지 않는다고 판단되면 더는 진행하지 않는다. 기어 다니는(크롤링) 행위를 다하고 나서 정리한 URL 테이블을 하나씩 방문해서 HTML 정보를 받아온다. 형태소 분석기를 사용해서 HTML에서 단어들을 추출하여 정리한다. 위 순서는 "웹 크롤러 만들기 0"에서 정리한 내용이다. 파란색으로 칠한 부분을 이번 글에서 구현해보자. 🧨프로젝트 초기 생성 $ mkdir crawler $ cd crawler $ npm init 모듈 ..

개발/Node js 2021.10.11

[Node js]웹 크롤러 만들기0-웹 크롤러란? 우리가 만들 것은?

🕸웹 크롤러란? 만들기 전에 무엇을 만들지 알고 가기 위해서 의미에 대해서 먼저 정리를 해보자. 흔히들 크롤러(Crawler), 스크래퍼(Scraper), 파서(Parser) 3가지에 대해서 다르게 의미 생각하고 이야기하는 경우가 있다. 사전적인 의미로만 간단히 생각해보면 무엇을 하는지 유추할 수 있다. Crawl : 기어가다. Scrape : 긁어내다. Parse : 분석하다. 크롤러는 웹을 기어 다니는 놈, 웹 페이지를 스크래퍼는 긁어 오는 놈, 파서는 웹 페이지를 분석하는 놈을 의미 한다. 하지만 웹 크롤러는 단순히 기어 다니는 행위만 하는 프로그램을 말하는 건 아니고, 웹을 돌아다니면서 웹 페이지(html/css/js)를 긁어오고 거기에 무슨 내용들이 있는지 분석을 하는 놈을 의미한다. 스크래퍼와..

개발/Node js 2021.10.11
반응형