https://www.robotstxt.org/robotstxt.html <- 이게 진짜 공식 사이트
The Web Robots Pages
About /robots.txt In a nutshell Web site owners use the /robots.txt file to give instructions about their site to web robots; this is called The Robots Exclusion Protocol. It works likes this: a robot wants to vists a Web site URL, say http://www.example.c
www.robotstxt.org
https://developers.google.com/search/docs/crawling-indexing/robots/create-robots-txt?hl=ko
robots.txt 파일 만들기 및 제출 | Google 검색 센터 | 문서 | Google for Developers
robots.txt 파일은 사이트의 루트에 위치합니다. robots.txt 파일을 만들고 예를 확인하며 robots.txt 규칙을 확인하는 방법을 알아보세요.
developers.google.com
개발자는 영어 공부를 해서라도 공식 문서를 봐야죠.
하지만 별거 없습니다. 사실상 Quick만 봐도 문제 없을 지도?
✨ Quick
자 이 파일을 복붙해서 본인 프로젝트에 맞게 수정하고 자신의 루트 경로에 입력하세요.
즉, 이 파일이 http://www.example.com/robots.txt에 위치해야 합니다.
이 파일은 모든(*) 사용자들로부터 모든 경로(/)에서 크롤링을 막겠어요. 라는 뜻입니다.
User-agent: *
Disallow: /
Robots.txt가 뭐예요?
Robots.txt로 크롤러가 액세스할 수 있는 파일을 제어할 수 있는 파일
크롤링을 왜 막나요?
서비스의 지적재산권을 보호하고 비정상적인 크롤링이 발생시키는 서버 과부화를 방지하기 위해서 필수입니다.
이 외에도 서비스에 개인정보가 있다면 크롤러에 의해 정보가 수집되겠죠?
뭐라고 쓰나요?
주석으로 파악해주세요.
# (1) `Googlebot`은 `/nogoogleboot`를 포함한 하위 경로에서 크롤링을 금지
User-agent: Googlebot
Disallow: /nogooglebot/
#(2) 나머지는 전체 경로에서 허용
User-agent: *
Allow: /
User-agent: Googlebot
Disallow: /*.xls$ # .xls로 끝나는 모든 파일을 금지한다
*
및 $
로 와일드 카드를 사용하여 특정 문자열로 끝나는 URL에 적용할 수 있다.
주의할 점
- 정규 표현식은 User-agent 또는 Disallow 행에서 지원되지 않는다.
- User-agent 필드의 '*'는 "모든 로봇"을 의미하는 특별한 값일 뿐이다.
- 특히 "User-agent: *bot*", "Disallow: /tmp/*" 또는 "Disallow: *.gif"와 같은 행은 사용할 수 없다.
다른 사이트들은 robots.txt를 어떻게 작성했을까?
📜 네이버의 Robots.txt
User-agent: *
Disallow: /
Allow : /$
Allow : /.well-known/privacy-sandbox-attestations.json
대기업의 robots.txt를 보면서 어떻게 작성할지 팁을 드리려고 했으나.. 간결하네요..
Robots.txt 한계점
사실 이 블로그처럼 요리조리 피해 크롤링을 할 수도 있습니다.
그래도 최소한의 방어는 하야겠죠? 🙌
https://blog.hashscraper.com/5-principles-for-bypassing-web-crawling-blocks/