데이터 엔지니어링/Crawling

[Crawling] 웹 크롤링과 웹 스크래핑의 차이

seojeon9 2024. 3. 27. 08:52

웹 크롤링(Web crawling)과 웹 스크래핑(Web scraping)은 둘 다 인터넷 상의 웹 페이지를 데이터를 추출하는 기술이지만, 약간의 차이가 있습니다.

웹 크롤링(Web Crawling)이란

웹 크롤링은 검색 엔진과 같이 웹을 탐색하고 인덱싱하는 프로세스입니다.
크롤러 혹은 스파이더라 불리는 프로그램이 인터넷을 순회하여 웹 페이지의 링크를 따라가며 정보를 수집합니다.
이는 주로 검색 엔진이 웹 페이지를 인덱싱하여 사용자가 검색 시 검색 결과를 제공하는 데 사용됩니다.


웹 스크래핑(Web Scraping)이란

웹 스크래핑은 웹 사이트에서 원하는 데이터를 추출하는 프로세스입니다.
보통은 특정 웹 페이지에서 필요한 정보를 가져와서 분석, 가공하거나 저장합니다.
스크래핑은 웹 크롤링을 포함할 수 있지만, 크롤링은 단순히 웹 페이지를 돌아다니는 것에 그치는 반면, 스크래핑은 웹 페이지의 내용을 읽어와서 그 중에서 필요한 데이터를 추출하는 작업을 포함합니다.
요약하자면, 웹 크롤링은 웹을 탐색하고 데이터를 수집하는 프로세스의 일부분이며, 웹 스크래핑은 특정 웹 페이지에서 데이터를 추출하는 작업입니다.

구분 웹 크롤링 웹 스크래핑
목적 웹 페이지 탐색 및 인덱싱 특정 데이터 추출
대표 기능 링크 따라가기, 페이지 구조 분석 HTML 파싱, 정보 추출
사용 예시 검색 엔진, 사이트맵 생성 가격 비교 사이트, 뉴스 수집, 데이터 분석 도구
포함 관계 스크래핑을 포함할 수도 있음 크롤링 기능을 포함할 수도 있음

 

사실 나도 평소에 "웹 크롤링"이라는 표현을 자주 쓰지만, 엄밀히 말하면 내가 하는 작업은 "웹 스크래핑"에 가깝다. 
내가 구현하는 로직은 무작정 링크를 따라다니기보단, 특정 URL의 구조를 이해하고 거기서 필요한 데이터만 추출하는 일이기 때문이다.
웹 페이지 구조가 자주 바뀌면 대응도 해야 하고, 동적 로딩에 대응하기 위한 처리를 하기도 하고..

이렇게 헷갈리는 두 개념을 정리해보았습니다.
찾아와주셔서 감사합니다:)

728x90