유용한웹상식

공유하기

스파이더(spider), 크롤러(crawler)란?

1.스파이더(spider),크롤러(crawler)란 무엇인가? 

스파이더(spider) 혹은 크롤러(crawler)라고도 불리는 로봇은 인터넷에 있는 웹페이지(웹문서)를 방문해서 수집하는 일을 합니다. 이 때 한 페이지만 방문하고 마는 것이 아니라 그 페이지에 링크되어 있는 또 다른 페이지를 차례로 방문합니다. 이처럼 링크를 따라 웹(web:거미줄)을 돌아다니는 모습이 마치 거미와 비슷하다고 해서 스파이더라고 부르는 것입니다. 

참고로 각 검색엔진의 로봇에는 고유한 이름이 존재하며, 네이버 로봇의 이름은 cowbot이라고 합니다. 


2.스파이더(spider),크롤러(crawler)가 하는 일은? 

엄청난 분량의 웹문서를 사람이 일일이 색인을 작성한다는 것은 불가능에 가깝습니다. 때문에 웹문서 검색에서는 사람이 일일이 색인을 다는 대신 프로그램이 이를 자동으로 수행해 줍니다. 색인작업을 하기 위해서는 우선 색인의 대상이 될 웹문서를 수집해야 합니다. 
웹문서를 자동으로 수집해 주는 역할을 하는 것이 바로 로봇이라는 프로그램입니다. 

3.스파이더(spider), 크롤러(crawler)와 웹사이트(디렉토리)검색, 웹문서검색의 관계는? 

대부분의 검색엔진은 "웹사이트(디렉토리)검색"과 "웹문서검색" 서비스를 병행하고 있는데 디렉토리(웹사이트)검색결과에 나오기 위해 홈페이지등록을 하는 것이고 자의든 타의든 홈페이지등록이 되어 있지 않은 경우에는 웹사이트( 디렉토리)검색결과에 나오지 않습니다. 

홈페이지가 검색엔진에 등록된 경우 얼마 후에 그 검색엔진의 로봇은 홈페이지를 방문하여 문서를 수집해 갑니다. 

홈페이지가 등록되어 있지 않은 경우에도 스파이더가 홈페이지를 방문하여 문서들을 수집해 갈 수 있습니다. 

이렇게 수집된 문서들은 색인과정을 거친 후 검색창에 검색을 한 경우 관련 문서들을 "웹문서"검색결과에 나타나게 됩니다. 

4.스파이더가 내 홈페이지의 문서들을 수집하게 하자 

인내심을 가지고서 기다리면 언젠가는 홈페이지를 방문하여 문서를 수집,색인하게 된다. 그러나 색인신청을 하는 방법도 있으므로 참조하도록 하자. 대부분의 메이저급 검색엔진들에서는 구글과 코리아와이즈넛의 웹문서검색서비스를 이용하고 있다. 과거에는 구글의 웹문서검색서비스를 많이 이용했으나 요즘에는 크게 구글,코리아와이즈넛,자체 웹문서검색서비스를 이용하고 있다. 특히 코리아와이즈넛의 웹문서검색서비스를 이용하는 검색엔진들이 늘어가고 있는 추세다. 

구글에 URL을 등록하자 : http://www.google.co.kr/intl/ko/add_url.html 
코리아와이즈넛에 사이트를 등록하자 : http://www.wisenut.co.kr/submit/ 

구글과 코리아와이즈넛의 웹문서검색서비스를 이용한 경우를 보자. 구글의 웹문서검색서비스를 이용한 경우 웹문서검색결과 우측에 
코리아와이즈넛의 웹문서검색서비스를 이용한 경우 웹문서검색결과 우측에 로고가 있다. 

각 검색엔진에 웹사이트(디렉토리)등록 못지 않게 메이저급검색엔진에 웹문서검색서비스를 제공하고 있는 구글과 코리아와이즈넛에 URL을 등록하여 이들로부터 서비스를 받고 있는 검색엔진의 웹문서검색결과에 자신의 홈페이지가 검색되도록 하자. 

5.로봇 배제방법 

검색로봇의 문제점 

로봇이라는 프로그램이 네트워크를 돌아다니게 되면 자칫 네트워크에 엄청난 트래픽(Traffic)이 발생할 수 있습니다. 즉, 네트워크에 과부하가 걸려 특정 사이트에 접속이 잘 되지 않거나 속도가 느려지는 문제가 생길 수 있습니다. 또한 동호회 명단, 직장 전화번호등 원치 않은 정보가 검색엔진에 노출되는 결과가 생길 수도 있습니다. 

해결방안 

1) 첫 번째로 어떤 사이트를 보려면 ID와 비밀번호가 필요하도록 만드는 방법입니다. 

이 경우 로봇은 해당 사이트의 ID와 비밀번호를 가지고 있지 않기 때문에 접근할 수가 없게 됩니다. 이 방법은 로봇의 접근을 직접적으로 배제하는 강력한 수단이지만 사이트를 사용하는 사람들도 ID와 비밀번호를 입력해야 하는 불편함이 있습니다. 간혹 ID와 비밀번호로 막아놓은 페이지가 네이버의 웹문서 검색에 노출된다는 문의가 들어오기도 합니다. 

하지만 링크로 연결되지 않는 한 네이버의 로봇은 비밀번호로 보안을 걸어놓은 문서에 접근하지 못합니다. 비밀번호로 보안을 걸어놓았는데도 웹검색에 노출이 되는 경우는 어떤 사람(주로 내부자)이 해당 문서의 URL을 다른 웹페이지에 적어놓았기 때문일 가능성이 큽니다. 

2)두 번째로 로봇 배제(Robot exclusion) 표준을 따르는 방법이 있습니다.로봇 배제 표준이란 말 그대로 웹문서를 수집해 가는 로봇을 배제한다는 뜻입니다. 로봇의 배제와 관련된 내용을 적어 놓은 robots.txt 파일을 사이트의 최상위 주소(서버 루트 디렉토리 예:www.gaseo.com/robots.txt)에 저장하면 됩니다. robots.txt를 서브디렉토리에 놓는 경우 효력이 없다는 사실에 주의하세요.예를 들어, www.yourhost/~mypage 밑에 robots.txt가 있어도 이는 아무런 효력을 갖지 못합니다. 로봇은 오직 루트 디렉토리의 robots.txt만을 참조할 뿐입니다. 로봇의 접근을 어디까지 허용할 것이냐에 따라 robots.txt에 들어가는 내용은 달라집니다.로봇 배제에 대한 보다 자세한 내용은 http://www.robotstxt.org에서 확인할 수 있습니다. 

(1) 모든 로봇을 배제하고 싶을 때 

User-agent: * 
Disallow: / 

(2) 모든 로봇을 허용하고 싶을 때 
이 경우에는 “robots.txt”를 작성할 필요가 없으나, 굳이 작성을 하자면 다음과 같습니다. 
( (1)과 비교했을 때 “/”가 빠져 있습니다.) 

User-agent: * 
Disallow: 

(3) 모든 로봇에게 서버의 일부분만을 제한하고 싶을 때 

User-agent: * 
Disallow: /my_photo/ 
Disallow: /my_diary/ 

이렇게 작성하면 로봇은 my_photo, my_diary라는 폴더에 속한 웹문서에 접근할 수 없습니다. 

(4) 특정 로봇만을 배제하고 싶을 때 
아래의 예에서는 “EvilRobot”이라는 이름을 가진 로봇만을 배제하게 됩니다. 

User-agent: EvilRobot 
Disallow: / 

(5) 특정 로봇에게만 접근을 허용하고 싶을 때 
아래의 경우 Cowbot만이 웹문서를 수집해갈 수 있습니다. 

User-agent: Cowbot 
Disallow: 
User-agent: * 
Disallow: / 

3)세 번째로 메타태그를 이용하는 방법 

“robots.txt”를 작성하는 것과 유사한 방법으로 HTML문서의 와 태그 사이에 라는 메타태그를 추가하면 로봇은 웹문서를 가져갈 수 없습니다. 이 방법은 다소 번거롭기는 하지만 문서 하나하나에 대해 정확하게 명시를 해주기 때문에 가장 확실하게 로봇의 접근을 막을 수 있는 방법입니다.
공유하기
등록일
2011-12-23 21:20
조회
24,411