Requests User-Agent 설정: 요청 준비와 접근 정책 구분
User-Agent는 요청 프로그램 정보를 전달하는 헤더이며, 바꾸는 것만으로 접근 권한이나 수집 허가가 생기지는 않습니다.
어떤 상황에서 적용하나요?
다음은 Requests에서 요청을 준비하고 헤더를 검사하는 로컬 예제입니다. 실제 전송은 하지 않습니다. 자신을 나타내는 식별자를 쓰고 대상 사이트의 API·이용약관·접근 안내를 우선 확인하세요.
검증 범위: 아래 코드는 외부 서비스에 요청하지 않는 로컬 예제입니다. 실제 서비스 연결은 별도로 검증해야 합니다.
최소 예제로 동작 확인하기
import requests
request = requests.Request("GET", "https://example.com/", headers={
"User-Agent": "WorkAutomationLearning/1.0"
})
prepared = request.prepare()
assert prepared.headers["User-Agent"] == "WorkAutomationLearning/1.0"
assert prepared.method == "GET"
print(prepared.headers["User-Agent"])
결과는 어떻게 확인하나요?
설정한 문자열이 출력됩니다. 이 결과는 헤더 준비를 검증할 뿐 실제 서버가 요청을 허용한다는 뜻은 아닙니다. 실제 전송에서는 시간 제한과 상태 코드를 확인해야 합니다.
실제 업무에 적용할 때 확인할 점
403을 받았다고 브라우저 헤더를 복사해 계속 요청하지 마세요. 인증이나 정책 문제를 확인하고 필요하면 관리자에게 허가를 받아야 합니다. 429 응답은 제공자의 재시도 지침을 따르고 요청 빈도를 낮추거나 중단합니다.
공식 자료와 다음 단계
관련 공식 문서에서 사용하는 버전의 기능과 제한을 확인하세요.
학습 경로: 웹 스크래핑 가이드 · 요청 정책과 헤더
작성: 로그 · 2026-10-17 수정: 확인되지 않은 경험담과 성능 보장 표현을 제거하고 예제·적용 조건·공식 근거를 보완했습니다.
댓글
댓글 쓰기