웹 크롤링(Crawling)과 스크래핑(Scraping) 차이
- IT/IT 용어
- 2022. 6. 7.
오래전부터 한국의 IT 분야에서는 크롤러(Crawler)를 일반적으로 크롤링(Crawling)과 스크래핑(Scraping)을 모두 포괄하는 의미로 사용이 되었으나 최근 들어, 크롤링과 스크래핑을 분리해서 사용하는 경우가 많고, 실질적으로 프로젝트를 할 땐 크롤링보단 스크래핑을 더 많이 하기에 이제는 확실히 분리해야 될 것 같아서 용어를 정리해보고자 한다.
웹 크롤링(Web Crawling)
웹 크롤링은 크롤러(Crawler)라는 봇(bot)을 이용하여 페이지의 정보를 인덱싱하는 것인데 주로 검색엔진이 사용하는 경우가 많다. 사실 웹크롤러와 웹 스크래핑이 둘다 사용하는 경우는 우리가 보통 어떤 사이트의 게시물을 크롤링할 때 특정 게시물이 신규로 등장했는지 여부를 확인하기 위해서 게시물 리스트의 정보를 크롤링하는 경우가 있다.
위와 같이 인벤의 게시물 정보가 있을 경우, 신규로 등록된 게시물과 게시물의 링크(Link) 정보를 가져와야 될 경우가 있다. 이런 기능을 크롤링이라고 한다. 한마디로 게시물의 정보를 가져오기 위한 데이터 식별 정보로 생각하면 되며 인덱싱(Indexing) 한다는 개념으로 이해해도 무방할 것 같다.
웹스크래핑(Web Scraping)
웹 스크래핑은 웹크롤러로 페이지의 정보를 얻고, 해당 페이지안으로 들어가서 구역별로 데이터를 추출하는 것이다. 마찬가지로 인벤 게시물을 예로 들면, 인벤 게시물의 내용을 구역별로 컬럼화하여 데이터를 추출하는 것이 스크래핑이다.
위 게시물 스샷을 보면, 스크래핑은 어떤 관점이 있는지 네모박스로 구역을 지정하였는데 스크래핑은 위와 같이 데이터를 컬럼(Column)으로 분리하여 추출하며, 이를 DB에 저장하여 마치, 해당 게시물이 우리가 보유한 DB에도 있는 것 같은 효과를 만들어 낸다.
웹 스크래핑의 경우, HTML의 Tag 정보를 이용해서 데이터를 추출하게 되며, 이렇게 Tag 정보를 추출하는 기능을 스크래퍼라고 한다.
크롤링와 스크래핑의 문제점
- 해당 사이트와 협력을 하지 않는 상태라면, 무단으로 데이터를 수집하는 문제가 있다.
- 해당 사이트에서 언제든지 크롤러와 스크래퍼가 접근을 못하게 막을 수 있다.
- 사이트의 구조가 변경되는 경우 크롤러와 스크래퍼가 작동되지 않는다.
- 너무 잦은 데이터를 수집할 경우, 해당 사이트에서 개별적으로 IP를 차단시킬 수 있다.
참고자료
[1] bright data - What Is The Difference Between Web Crawling And Web Scraping?
'IT > IT 용어' 카테고리의 다른 글
EoL, EoS, EoSS, EoSL, EoM 이해하기 (2) | 2023.07.31 |
---|---|
개발자, 프로그래머, 코더의 차이점 (0) | 2023.07.17 |
Yaml, Yml 이란? (1) | 2020.10.14 |
정형, 비정형, 반정형 데이터란? (1) | 2020.04.01 |
형상관리의 Trunk, Branch, Tag (0) | 2015.07.26 |