웹 크롤링(Crawling)과 스크래핑(Scraping) 차이

    오래전부터 한국의 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

    댓글

    Designed by JB FACTORY