웹 크롤러

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색
웹 크롤러의 구조.

웹 크롤러(web crawler)는 조직적, 자동화된 방법으로 월드 와이드 웹을 탐색하는 컴퓨터 프로그램이다.

웹 크롤러가 하는 작업을 웹 크롤링(web crawling) 혹은 스파이더링(spidering)이라 부른다. 검색 엔진과 같은 여러 사이트에서는 데이터의 최신 상태 유지를 위해 웹 크롤링한다. 웹 크롤러는 대체로 방문한 사이트의 모든 페이지의 복사본을 생성하는 데 사용되며, 검색 엔진은 이렇게 생성된 페이지를 보다 빠른 검색을 위해 인덱싱한다. 또한 크롤러는 링크 체크나 HTML 코드 검증과 같은 웹 사이트의 자동 유지 관리 작업을 위해 사용되기도 하며, 자동 이메일 수집과 같은 웹 페이지의 특정 형태의 정보를 수집하는 데도 사용된다.

웹 크롤러는 봇이나 소프트웨어 에이전트의 한 형태이다. 웹 크롤러는 대개 시드(seeds)라고 불리는 URL 리스트에서부터 시작하는데, 페이지의 모든 하이퍼링크를 인식하여 URL 리스트를 갱신한다. 갱신된 URL 리스트는 재귀적으로 다시 방문한다.

용어[편집]

웹 크롤러는 웹 스파이더[1], 앤트, 오토매틱 인덱서[2], 웹 스커터로도 부를 수 있다.[3] 그 외에 봇(bots), 웜(worms), 웹 로봇(web robot) 등으로도 부른다.

크롤링 정책[편집]

웹 크롤러의 행위는 복합적 정책들의 산물이다:[4]

  • 선택 정책: 페이지의 다운로드를 언급
  • 재방문 정책: 언제 문서의 변경사항을 검사할지를 언급
  • 공손성 정책: 웹사이트의 과부하를 막기 위한 언급
  • 병렬화 정책: 분산 웹 크롤러를 어떻게 조율할지를 언급

[편집]

오픈 소스 크롤러[편집]

같이 보기[편집]

각주[편집]

  1. Spetka, Scott. “The TkWWW Robot: Beyond Browsing”. NCSA. 2004년 9월 3일에 원본 문서에서 보존된 문서. 2010년 11월 21일에 확인함. 
  2. Kobayashi, M. & Takeda, K. (2000). “Information retrieval on the web”. 《ACM Computing Surveys》 (ACM Press) 32 (2): 144–173. doi:10.1145/358923.358934. 
  3. See definition of scutter on FOAF Project's wiki
  4. Castillo, Carlos (2004). 《Effective Web Crawling》 (학위논문). University of Chile. 2010년 8월 3일에 확인함. 
  5. Risvik, K. M. and Michelsen, R. (2002). Search Engines and Web Dynamics. Computer Networks, vol. 39, pp. 289–302, June 2002.
  6. Zeinalipour-Yazti, D. and Dikaiakos, M. D. (2002). Design and implementation of a distributed crawler and filtering processor. In Proceedings of the Fifth Next Generation Information Technologies and Systems (NGITS), volume 2382 of Lecture Notes in Computer Science, pages 58–74, Caesarea, Israel. Springer.
  7. McBryan, O. A. (1994). GENVL and WWWW: Tools for taming the web. In Proceedings of the First World Wide Web Conference, Geneva, Switzerland.