requests는 파이썬으로 HTTP 호출하는 프로그램을 작성할 때 가장 많이 사용되는 라이브러리입니다.
requests 모듈 설치
파이썬의 패키지 매니저인 pip를 이용해서 requests 패키지를 설치합니다.
>>> pip install requests
API
어떤 방식의 HTTP 요청을 하는지에 따라 해당하는 이름의 함수를 호출하여 사용할 수 있습니다.
- GET 방식 : requests.get()
- POST 방식 : requests.post()
- PUT 방식 : requests.put()
- DELETE 방식 : requests.delete()
>>> import requests
>>> response = requests.get('https://www.naver.com/')
응답 상태
상태 코드는 응답 객체의 status_code 속성을 통해 얻을 수 있습니다.
>>> response = requests.post("https://www.naver.com/")
>>> response.status_code
201
response body / payload
요청이 정상적으로 처리가 된 경우, response body 혹은 payload에 요청한 데이터가 담겨져 옵니다.
1. content 속성
>>> response.content
2. text 속성
>>> response.text
3. json
응답 데이터가 JSON 포맷이라면 json() 함수를 통해 dictionary 객체를 얻을 수 있습니다.
>>> response.json()
응답 헤더
응답에 대한 메타 데이터를 담고 있는 응답 헤더는 headers 속성을 통해 dictionary 형태로 얻을 수 있습니다.
>>> response.headers
요청 쿼리
params 옵션을 사용하면 쿼리 스트링을 dictionary 형태로 전달할 수 있습니다.
import requests
url = 'https://section.blog.naver.com/Search/Post.nhn?pageNo=1&rangeType=ALL&orderBy=sim&keyword=%ED%8C%8C%EC%9D%B4%EC%8D%AC'
params = {
'pageNo' : 1,
'rangeType' : 'ALL',
'orderBy' : 'sim',
'keyword' : '파이썬'
}
response = requests.get('https://section.blog.naver.com/Search/Post.nhn', params=params)
print(response.status_code)
print(response.url)
요청 헤더
headers 옵션을 사용하면 옵션 헤더를 직접 설정할 수 있습니다.
>>> requests.post("https://jsonplaceholder.typicode.com/users", headers={'Content-Type': 'Authorization: Bearer 12345'})
<Response [201]>
728x90
반응형
'python' 카테고리의 다른 글
[Python] mac에서 Jupyter notebook 설치하기 (0) | 2022.01.18 |
---|---|
[Python] mac에 미니콘다(Miniconda) 설치하기 (0) | 2022.01.18 |