웹 스크래핑

위키백과, 우리 모두의 백과사전.

웹 스크래핑(web scraping), 웹 하베스팅(web harvesting) 또는 웹 데이터 추출(web data extraction)은 웹사이트에서 데이터를 추출하는 데 사용되는 데이터 스크래핑이다. 웹 스크래핑 소프트웨어는 HTTP 또는 웹 브라우저를 사용하여 월드 와이드 웹에 직접 액세스할 수 있다. 웹 스크래핑은 소프트웨어 사용자가 수동으로 수행할 수 있지만 이 용어는 일반적으로 이나 웹 크롤러를 사용하여 구현된 자동화된 프로세스를 의미한다. 이는 나중에 검색하거나 분석하기 위해 특정 데이터를 수집하고 웹에서 일반적으로 중앙 로컬 데이터베이스나 스프레드시트로 복사하는 복사 형식이다.

웹페이지를 스크랩하는 작업에는 웹페이지를 가져오고 추출하는 작업이 포함된다. 가져오기는 페이지를 다운로드하는 것이다(사용자가 페이지를 볼 때 브라우저가 수행함). 따라서 웹 크롤링은 나중에 처리하기 위해 페이지를 가져오는 웹 스크래핑의 주요 구성 요소이다. 가져온 후에는 추출이 수행될 수 있다. 페이지의 콘텐츠를 구문 분석하고, 검색하고, 형식을 다시 지정할 수 있으며, 해당 데이터는 스프레드시트에 복사되거나 데이터베이스에 로드될 수 있다. 웹 스크레이퍼는 일반적으로 페이지에서 무언가를 가져와 다른 곳에서 다른 목적으로 사용한다. 이름과 전화번호, 회사와 URL, 이메일 주소를 찾아 목록에 복사하는 것이 그 예이다(연락처 스크래핑).

연락처 스크래핑 외에도 웹 스크래핑은 웹 인덱싱, 웹 마이닝 및 데이터 마이닝, 온라인 가격 변동 모니터링 및 가격 비교, 제품 리뷰 스크래핑(경쟁 시청), 부동산 목록 수집, 날씨, 데이터 모니터링, 웹사이트 변경 감지, 연구, 온라인 존재 및 평판 추적, 웹 매시업, 웹 데이터 통합 등에 사용되는 애플리케이션의 구성 요소로 사용된다.

웹 페이지는 텍스트 기반 마크업 언어(HTMLXHTML)를 사용하여 구축되며 유용한 데이터가 텍스트 형식으로 포함되어 있는 경우가 많다. 그러나 대부분의 웹 페이지는 인간 최종 사용자를 위해 설계되었으며 자동화된 사용이 용이하도록 설계되지 않았다. 그 결과, 웹페이지 스크래핑을 용이하게 하는 특수 도구와 소프트웨어가 개발되었다.

최신 형태의 웹 스크래핑에는 웹 서버의 데이터 피드 모니터링이 포함된다. 예를 들어 JSON은 일반적으로 클라이언트와 웹 서버 간의 전송 메커니즘으로 사용된다.

일부 웹사이트에서는 봇이 페이지를 크롤링(보기)하는 것을 감지하고 차단하는 등 웹 스크래핑을 방지하기 위해 사용하는 방법이 있다. 이에 대한 대응으로 DOM 구문 분석, 컴퓨터 비전자연어 처리 기술을 사용하여 사람의 탐색을 시뮬레이션하여 오프라인 구문 분석을 위한 웹 페이지 콘텐츠를 수집하는 웹 스크래핑 시스템이 있다.

같이 보기[편집]