[python] GET 요청을 보내는 방법

웹 개발이나 데이터 수집 작업을 할 때, 다른 서버에 GET 요청을 보내야 할 때가 종종 있습니다. Python을 사용하여 간단하게 GET 요청을 보내는 방법을 알아보도록 하겠습니다.

requests 라이브러리 사용하기

Python에서 HTTP 요청을 보내기 위해 requests 라이브러리를 많이 사용합니다. requests 라이브러리는 설치해야 사용할 수 있으므로, 먼저 다음과 같이 설치해줍니다.

pip install requests

requests 라이브러리를 사용하여 GET 요청을 보내는 방법은 다음과 같습니다.

import requests

url = "http://example.com/api"

response = requests.get(url)

print(response.text)

우선 requests 모듈을 import한 후, 요청을 보낼 URL을 지정합니다. 그리고 requests.get() 함수를 사용하여 GET 요청을 보내고, 그 결과를 response 변수에 저장합니다.

response 변수의 text 속성을 사용하여 응답의 본문을 출력합니다.

매개변수 전달하기

GET 요청 시 URL에 매개변수를 전달해야 할 경우가 있습니다. 이 경우, requests.get() 함수의 params 매개변수를 사용하여 매개변수를 지정할 수 있습니다.

다음은 매개변수를 전달하는 예제입니다.

import requests

url = "http://example.com/api"

params = {
  "key1": "value1",
  "key2": "value2"
}

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

print(response.text)

params 변수에 매개변수를 딕셔너리 형태로 지정한 후, requests.get() 함수의 params 매개변수에 전달합니다.

요청 헤더 설정하기

HTTP 요청 시 헤더에 추가적인 정보를 넣고 싶을 때가 있습니다. requests 라이브러리를 사용하여 이를 설정할 수 있습니다.

다음은 요청 헤더를 설정하는 예제입니다.

import requests

url = "http://example.com/api"

headers = {
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}

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

print(response.text)

headers 변수에 헤더 정보를 딕셔너리 형태로 지정한 후, requests.get() 함수의 headers 매개변수에 전달합니다.

참고 자료