강의
"웹 스크래핑"은 웹 페이지들로부터 원하는 정보를 추출하는 것을 말합니다.
"웹 크롤링"은 크롤러(Crawler)를 이용해서 웹 페이지의 정보를 인덱싱하는 것을 말합니다.
HTTP 요청할 때 고려 사항
- 웹 스크래핑/크롤링을 통해 달성하고자 하는 목적
- 웹 스크래핑/크롤링이 서버에 미치는 영향
로봇 배제 프로토콜(Robot Exclusion Protocol, REP)
# 모든 user-agent 접근 불허
User-agent: *
Disallow: /
# 모든 user-agent 접근 허용
User-agent: *
Allow: /
# 특정 user-agent 접근 불허
User-agent: Name
Disallow: /
"robots.txt"는 웹 사이트 및 웹 페이지를 수집하는 로봇들의 무단 접근을 방지하기 위해 만들어진 로봇 배제 표준(Robots Exclusion Standard)이자 국제 권고안입니다.
나의 User Agent를 확인할 수 있습니다. https://www.whatismybrowser.com/detect/what-is-my-user-agent/
웹 서버에 요청할 때 사용자 에이전트 HTTP 헤더(user agent HTTP header)에 나의 브라우저 정보를 전달하면 웹 서버가 나를 진짜 사용자로 인식할 수 있게 됩니다.
import requests
res = requests.get("https://www.naver.com/robots.txt")
print(res.text)
'데브코스 TIL > Web Scrapping' 카테고리의 다른 글
Web Scraping 기초 2-2. HTML을 분석해주는 BeautifulSoup (0) | 2023.10.25 |
---|---|
Web Scraping 기초 2-1. 웹 브라우저가 HTML을 다루는 방법 (0) | 2023.10.24 |
Web Scraping 기초 1-3. 나의 첫 HTTP 통신 코드 (0) | 2023.10.24 |
Web Scraping 기초 1-2. 웹 페이지와 HTML (0) | 2023.10.24 |
Web Scraping 기초 1-1. 인터넷 속의 약속, HTTP (0) | 2023.10.24 |