본문 바로가기

IT/Keywords

User-Agent??

User-Agent??

  • 사용자의 여러 가지 정보( 사용자가 어떤 OS를 사용 중인지, 어떤 웹 브라우저를 사용 중인지 등)를 포함
  • 필요한 이유
    • 무분별한 크롤링과 서버 과부하를 막기 위해 requests를 통해 접속하는 것을 차단하는 사이트들 존재
    • 단순히 requests만을 사용하면 서버는 requests를 통해서 크롤링 하는 것을 바로 알 수 있음
    • 따라서 아래와 같이 User-Agent를 이용하여 사용자가 직접 검색하는 것처럼 우회할 수 있음
      • 일반 웹 브라우저의 User-Agent 문자열을 HTTP 헤더에 추가하여, 
        서버가 요청을 웹 브라우저로 인식하게 수정 -> 서버 접근을 우회할 수 있음
import requests
 
url = "https://comic.naver.com/index"
headers = {"User-Agent":"Your User-Agent"}
res = requests.get(url, headers=headers)
 

What is my user agent?

Every request your web browser makes includes your User Agent; find out what your browser is sending and what this identifies your system as.

www.whatismybrowser.com

  • User-Agent 정보를 통해 일반 웹 브라우저인지 판단하는 방식
    • User-Agent 문자열에서 특정 패턴이나 키워드를 확인하는 방법으로 이루어짐
    • 일반 웹 브라우저는 각자의 고유한 User-Agent 문자열을 보내기 때문에, 이 정보를 비교하여 브라우저 여부를 판별할 수 있음
      • 예 : 일반적인 웹 브라우저 User-Agent는 다음과 같은 문자열을 포함
        • Chrome: Mozilla/5.0 ... Chrome/[버전] ...
        • Firefox: Mozilla/5.0 ... Firefox/[버전]
        • Safari: Mozilla/5.0 ... Safari/[버전]
        • Edge: Mozilla/5.0 ... Edg/[버전]

'IT > Keywords' 카테고리의 다른 글

RTF (Rich Text Format)  (0) 2024.11.15
코어 덤프?  (0) 2024.08.16