본문 바로가기
파이썬

파이썬 requests 라이브러리 이해하기

by python pro 2023. 1. 29.
반응형

Python Requests는 웹 서버에 HTTP 요청을 보내는 라이브러리입니다. 이를 이용해 웹 서버에 요청을 보내고 응답을 받을 수 있습니다.

먼저, requests 라이브러리를 설치해야 합니다.

pip install requests

그리고 아래와 같이 requests 모듈을 import 합니다.

import requests

요청을 보내는 가장 기본적인 방법은 get() 함수를 사용하는 것입니다.

response = requests.get('https://www.example.com')

이렇게 요청을 보냈을 때 응답은 Response 객체로 반환됩니다. 응답 내용은 .text속성으로 얻을 수 있습니다.

print(response.text)

requests 모듈은 다양한 요청 메서드를 지원하는 형식으로 데이터를 전송할 수 있습니다.

 

POST 요청을 보내려면 post() 함수를 사용합니다.

data = {'key': 'value'}
response = requests.post('https://www.example.com', data=data)

PUT 요청을 보내려면 put() 함수를 사용합니다.

data = {'key': 'value'}
response = requests.put('https://www.example.com', data=data)

DELETE 요청을 보내려면 delete() 함수를 사용합니다.

response = requests.delete('https://www.example.com')

응답 헤더를 보려면 headers 속성을 사용합니다.

print(response.headers)

요청에 헤더를 추가하려면 headers 인자를 사용합니다.

headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get('https://www.example.com', headers=headers)

Requests 라이브러리를 사용하면 간단하게 웹 서버에 요청을 보내고 응답을 받을 수 있어 많은 개발자들이 이를 사용하고 있습니다. 웹 크롤링, API 연동 등에서 자주 사용되며, 이를 이용하면 편리하게 웹 기반의 작업들을 수행할 수 있습니다.

 

실제 업무에서는 requests 라이브러리를 이용해 웹 API를 호출하는 경우가 많습니다. 아래는 OpenWeather API를 호출하는 예제 코드입니다.

import requests

api_key = "YOUR_API_KEY"
city_name = "Seoul"

# API 호출
response = requests.get(f'http://api.openweathermap.org/data/2.5/weather?q={city_name}&appid={api_key}')

# 응답 확인
print(response.text)

또한, 웹 페이지를 크롤링하여 원하는 정보를 추출하는 경우도 있습니다. 아래는 구글 검색 결과 첫번째 페이지의 타이틀 제목을 추출하는 예제 코드입니다.

import requests
from bs4 import BeautifulSoup

# 구글 검색
query = "Python Requests"
response = requests.get(f"https://www.google.com/search?q={query}")

# HTML 파싱
soup = BeautifulSoup(response.text, 'html.parser')

# 타이틀 추출
titles = soup.select('div.r > a > h3')
for title in titles:
    print(title.text)

위 코드는 구글 검색 결과를 크롤링 하는 예제입니다. 이외에도 여러가지 웹 크롤링 기법을 사용할 수 있습니다.

위 코드는 기본적인 사용법을 설명하였지만, 실제 업무에서는 다양한 요구사항에 맞게 코드를 수정해야 할 수 있습니다.

반응형

댓글