크롤링(crawling) 혹은 스크래이핑(scraping)은 웹 페이지를 그대로 가져와서 거기서 데이터를 추출해 내는 행위이다. 크롤링하는 소프트웨어는 크롤러(crawler)라고 부른다.



웹 크롤러(web crawler)는 조직적, 자동화된 방법으로 월드 와이드 웹을 탐색하는 컴퓨터 프로그램이다. 웹 크롤러에 대한 다른 용어로는 앤트(ants), 자동 인덱서(automatic indexers), 봇(bots), 웜(worms), 웹 스파이더(web spider), 웹 로봇(web robot) 등이 있다.


웹 크롤러가 하는 작업을 웹 크롤링(web crawling) 혹은 스파이더링(spidering)이라 부른다. 검색 엔진과 같은 여러 사이트에서는 데이터의 최신 상태 유지를 위해 웹 크롤링한다.


웹 크롤러는 대체로 방문한 사이트의 모든 페이지의 복사본을 생성하는 데 사용되며, 검색 엔진은 이렇게 생성된 페이지를 보다 빠른 검색을 위해 인덱싱한다. 또한 크롤러는 링크 체크나 HTML 코드 검증과 같은 웹 사이트의 자동 유지 관리 작업을 위해 사용되기도 하며, 자동 이메일 수집과 같은 웹 페이지의 특정 형태의 정보를 수집하는 데도 사용된다.


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


따라서 블러그를 다른 사람은 크롤링이 잘 될 수 있도록 검색엔진에 등록하는 것이 바람직하다 할 수 있겠습니다.

특히 수익 창출을 목표로 하는 블러그 분들에겐 필수 사항이겠죠.



만약 블러그를 다른 사람에게 보이지 않게 하기 위해서는 크롤링이 안되게 하면 되는데 이때 활용하는 것이 robots.txt 입니다.

이제 robots.txt 를 알아보겠습니다.


웹 사이트에 봇이 접근하는 것을 방지하는 것을 로봇 배제 표준이라 하고, 접근 제한에 대한 설명을 기술한 것이 robots.txt 입니다.


한 마디로 웹 사이트에 제한을 두어 특정 봇이 할 수 있는 것을 제한 합니다. 접근을 막거나, 허락하거나, 특정 디렉터리를 정해 접근을 막는 다던가.. 하지만 설정해 놓아도 접근 할 수 있습니다.


또한 robots.txt 는 항상 도메인의 root에 위치해야 합니다. (Windows = C:/inetpub/wwwroot/, Linux = /var/www)

robots.txt 를 확인하려면 간단하게 URL 뒤에 /robots.txt 를 입력하면 됩니다.

예시)
User-agent: *
Disallow: /owner
Disallow: /admin
Disallow: /oldadmin
Disallow: /search
Disallow: /m/search
Disallow: /m/admin
Allow: /

User-agent: Mediapartners-Google
Allow: /

User-agent 부분에는 해당 봇을 쓰면 되는데 와일드 카드 문자'*'를 쓰게 되면 모든 봇이 됩니다.

구글로봇: Googlebot
구글 이미지: googlebot-image
구글 모바일: googlebot-mobile
야후로봇: Slurp, yahoo-slurp
야후 이미지: Yahoo-MMCrawler
네이버: cowbot, naverbot, yeti
다음: daumos


그 밑에 Disallow 라고 되어있는데 이는 접근 차단으로 보면 됩니다. Allow는 접근 허락, 위의 구문은 모든 봇에게 /owner, /admin, /oldadmin, /search, /m/search, /m/admin 을 접근 차단 하고 그 외의 디렉터리는 접근 허락을 한다는 뜻 입니다.

두 번째는 Mediapartners-Google 봇에게 모든 디렉터리를 접근 허락한다는 뜻입니다.

만약 Disallow: 에 공백이 있으면 이는 해당 봇이 사이트를 크롤링할 수 있다는 뜻 입니다.


검색 엔진에 따라 제한이 다르겠지만, Allow, Disallow 에도 특수 문자를 사용할 수 있는 경우가 종종 있습니다. 해당 봇의 제한 사항을 알고, 활용할 수 도 있습니다.

 


참고사이트

https://ko.wikipedia.org/wiki/%EC%9B%B9_%ED%81%AC%EB%A1%A4%EB%9F%AC
https://namu.wiki/w/%ED%81%AC%EB%A1%A4%EB%A7%81
http://blog.skbroadband.com/652

'IT' 카테고리의 다른 글

NET::ERR_CERT_DATE_INVALID 해결책  (0) 2017.03.25
사이트맵이란?(sitemap)  (5) 2017.03.13
bing 웹 마스터 사이트맵 등록하기  (0) 2017.02.23
티스토리 Bing 웹 마스터 등록하기  (0) 2017.02.21
ZUM 검색등록 하기  (0) 2017.02.21

+ Recent posts