크롤링(crawling) - robots.txt와 주의점

2023. 4. 25. 14:54 기타 정보/IT 용어

크롤러를 만들기 전 알아야 할 사항

웹페이지의 내용을 가져 오는 것을 크롤링(Crawling) 또는 스크래핑(Scraping)이라고 합니다.

가져와야 할 페이지들이 많은 경우, 구글이나 네이버, 다음과 같은 검색 엔진 사이트들은 검색 속도를 높이기 위해 robot 이라는 프로그램을 만들어서 자동으로 웹 페이지들을 크롤링하는 방법을 사용합니다.

그런데 개인 정보가 들어있는 사이트들은 크롤링이 안 되도록 막고 싶을 수 있습니다. 그래서 무분별한 크롤링을 막고 제어하기 위해 1994년 6월에 로봇 배제 규약이 만들어졌습니다. 말 그대로 로봇이 수집을 못하게 막을 목적으로 만들어졌는데 로봇의 접근 관련 내용(크롤링 허가/불허의 여부)을 robots.txt라는 파일에 적어두는 방법입니다.

만약 크롤링하는 로봇 프로그램이 http://www.example.com의 웹 사이트를 방문할 경우 먼저 http://www.example.com/robots.txt 파일을 찾게 됩니다.

그리고 robots.txt 파일이 있을 경우 파일을 읽어 그 내용을 분석해서 수집해도 되는 콘텐츠만 수집하고 허락이 안 된 내용은 수집하지 않습니다.

이 규약의 의도는 좋지만 강제 안이 아닌 권고 안이라서 접근 방지 설정을 하였다고 해도, 다른 사람들이 그 파일에 접근할 수 있습니다.

robots.txt

 
User-agent: *  # 모든 로봇(robot)들에 적용합니다
Disallow: /   # 모든 페이지들의 색인(indexing)을 금지합니다
 

User-agent:  # 접근을 허용하지 않을 로봇 이름을 설정합니다
Disallow: # 허용하지 않을 항목에 대해 설정합니다
# 단 "Disallow"를 빈 값으로 설정할 경우, 모든 하위 경로에 대한 접근이 가능합니다
# 그리고 robots.txt 파일에는 최소한 한 개의 "Disallow" 필드가 존재해야만 합니다

Disallow: /help   # /help.html 과 /help/index.html 둘 다 허용 안됩니다
Disallow: /help/  # /help/index.html는 허용 안하나, /hepl.html은 허용됩니다

주의해야 할 점은 크롤링 해도 된다라고 해서 저작권 문제까지 자유로운 것은 아니라는 것입니다. 특히 신문기사나 책, 논문, 사진 등의 자료들은 저작권에 특별히 주의해야 합니다.

 

출처 : https://gbsb.tistory.com/80