본문 바로가기
파이썬

파이썬 Python에서 요청 라이브러리를 사용하여 "User-agent"보내기

by º기록 2021. 2. 18.
반응형

Python 요청을 사용하여 웹 페이지를 요청하는 동안 "User-agent"에 대한 값을 보내고 싶습니다. 아래 코드와 같이 헤더의 일부로 보내도 괜찮을지 확실하지 않습니다.

debug = {'verbose': sys.stderr}
user_agent = {'User-agent': 'Mozilla/5.0'}
response  = requests.get(url, headers = user_agent, config=debug)

디버그 정보는 요청 중에 전송되는 헤더를 표시하지 않습니다.

이 정보를 헤더로 보내는 것이 허용됩니까? 그렇지 않은 경우 어떻게 보낼 수 있습니까?

 

해결 방법

 

user-agent 는 헤더의 필드로 지정되어야합니다.


원하는 작업을 수행하는 가장 간단한 방법은 다음과 같이 사전을 만들고 헤더를 직접 지정하는 것입니다.

import requests

url = 'SOME URL'

headers = {
    'User-Agent': 'My User Agent 1.0',
    'From': 'youremail@domain.com'  # This is another valid field
}

response = requests.get(url, headers=headers)

이전 버전의 요청 은 기본 헤더를 차단 했으므로 다음을 수행하여 기본 헤더를 유지 한 다음 자신의 헤더를 추가하는 것이 좋습니다.

import requests

url = 'SOME URL'

# Get a copy of the default headers that requests would use
headers = requests.utils.default_headers()

# Update the headers with your custom ones
# You don't have to worry about case-sensitivity with
# the dictionary keys, because default_headers uses a custom
# CaseInsensitiveDict implementation within requests' source code.
headers.update(
    {
        'User-Agent': 'My User Agent 1.0',
    }
)

response = requests.get(url, headers=headers)

 

참조 페이지 https://stackoverflow.com/questions/10606133

 

 

반응형

댓글