웹 크롤링이란?

제이제이·2022년 8월 24일
0
post-thumbnail

puppeteer로 구글 검색 결과를 크롤링하는 프로젝트를 진행하면서 웹 크롤링에 대하여 참고한 내용을 요약 정리해보았다.

웹 크롤링이란?

웹에서 필요한 정보를 찾아 수집하고 필요한 데이터를 가져와서 저장하는 것을 의미한다.

웹 크롤러 봇은, 정리되지 않은 도서관의 모든 책을 검토하고 카드 카탈로그를 구성함으로써, 도서관을 찾는 이가 필요한 정보를 빠르고 쉽게 찾을 수 있도록 도와주는 사람과 유사합니다. 이 사람은 도서관의 책을 주제별로 분류하고 정렬할 수 있도록, 책의 제목, 요약, 본문 중 일부를 읽어 무엇에 대한 책인지 파악할 것입니다.
-Cloudflare 웹 크롤러

검색 색인화

정보를 필요로 하는 사람에게 인터넷의 어디에서 그 정보를 찾을 수 있는지 알려주는 색인과 같다. 페이지의 메타데이터에 중점을 두고 가장 관련성이 높은 페이지를 선택해서 보여준다.

웹 크롤러의 작동 방식

엄청나게 많은 양의 웹페이지가 있기 때문에 아래 항목과 같은 것들을 참고해서 중요한 정보가 포함될 가능성이 있는 웹을 먼저 크롤링한다.

  • 해당 페이지를 링크하고 있는 다른 페이지 수
  • 페이지 방문자 수

웹 페이지 재방문

웹 콘텐츠는 지속적으로 변경되거나 삭제되고 새로운 위치로 이동하기 때문에 정기적으로 페이지를 다시 방문해서 최신 버전의 콘텐츠를 색인화한다.

웹 크롤링과 웹 스크래핑의 차이점

웹스크래핑은 봇이 허가 없이 웹사이트의 콘텐츠를 다운로드하는 경우를 의미한다.

웹 크롤링보다 대상이 명확하고, 웹 크롤러는 링크를 계속 따라가며 크롤링하는 반면, 웹 스크래퍼는 특정 페이지만을 추적하기도 한다. 웹사이트의 콘텐츠를 악의적인 목적으로 이용하려는 의도가 있는 경우도 많다.

웹크롤러는 보통 robots.txt 파일을 준수하고 웹 서버에 부담이 되지 않도록 요청을 제한하는데, 웹 스크래퍼는 웹 서버에 대한 영향을 무시하고 활동하기도 한다.

웹사이트 운영자라면 참고할 사항

  • 크롤링은 서버 자원이 필요하기 때문에 과도한 색인화는 서버에 부담을 준다.
  • 페이지의 콘텐츠 양이나 사이트 내의 페이지 수에 따라서 색인화를 자주 허용하지 않는 것이 웹의 운영자에게 유리할 수도 있다.
  • “no index”를 추가해서 특정 사용자에게만 노출되는 페이지를 만들 수 있다. (ex_ 특정 고객을 대상으로 하는 랜딩페이지)
  • SEO(검색 엔진 최적화): 나의 웹사이트가 검색 엔진 결과의 상단에 표시되도록 검색 색인화에 맞게 웹페이지를 만드는 것을 의미한다. 검색 결과로 자연스러운 트래픽을 유입시키기 위해 사용된다.

참고자료

웹 크롤러 - Cloudflare

profile
그날그날의 최선을 다하기💪 피드백은 언제나 환영입니다!

0개의 댓글