본문 바로가기

공부/Data Science

크롤링,스크레이핑 정리

크롤링,스크레이핑 정의:

우리는 데이터를 수집할 때, 어딘가에 요청하거나 웹에서 긁어온다는 표현을 쓰기도 합니다. 

이때 긁어 온다는 말을 조금 더 정확하게, 전문적으로 표현한 것이 크롤링, 스크레이핑 입니다.    

 

예를 들어 2010년부터 2019년까지 월마다 음원사이트의 인기차트 100순위 데이터를 직접 수집할 때,   

오래된 데이터를 찾기위해 수많은 클릭과, 저장의 반복이 이루어질 것입니다.   

 

이러한 단순반복 작업을 프로그램을 통해 자동화 시켜서 수행하는 작업을 크롤링이라고 합니다. 

 

크롤링의 원리: 

웹에 존재하는 데이터는 대부분 HTML 이라는 문서로 구조화 되어있습니다. 메모장 안에 텍스트를 통째로 구겨넣은 것이 아닌, 제목을 쓰는 공간, 내용을 쓰는 공간, 날짜를 쓰는 공간 모두 태그 라는 문법으로 구분되어 있습니다. 

만약 날짜별 주식가격을 알고 싶다면, 페이지의 주소와 페이지안에있는 날짜 태그, 그리고 주식가격을 담은 태그 이렇게 2가지 태그를 찾아서 크롤러(크롤링 하는 프로그램)에게 2가지만 추출해오라고 명령하는 것입니다. 

 

크롤링을 하기위한 배경지식: 

크롤링 하는 몇가지 방법을 소개하기 전에, 제대로 크롤링 하기전에 알아야할 몇가지 배경지식이 필요하다는 것을 알려드리고 싶습니다. 

웹 페이지에 있는 정보를 긁어오기 때문에, 웹 페이지의 구조에 대한 간단한 이해정도는 필수적이라 생각됩니다. 

크롤링을 목표로 하시는 분들 중에, HTML 이라고 불리는 웹 언어에 대한 이해가 부족하신 분들은 간단한 웹 공부를 하고서 시작하시길 추천드립니다.

 

링크: https://youtu.be/50JOpxN0554

10분도 안되는 시간에 웹에 대한 빠른 이해를 도와주는 좋은 유튜브 강의 하나를 소개해 드립니다. 

 

 

크롤링 방법:   

크롤링을 하는 방법은 여러가지가 있습니다. 다양한 컴퓨터 언어로 가능하고, 한 언어안에서도 목적에 맞게 다양한 방법으로 크롤링을 할 수 있습니다.  

저는 그중에서 파이썬을 활용한 몇가지 방법을 소개드립니다.

 

방법1. Beautiful Soup 라이브러리를 이용한 웹 크롤링

 

 

 

(계속)