Requests 라이브러리

Requests

requests는 파이썬으로 HTTP 호출하는 프로그램을 작성할 때 가장 많이 사용되는 라이브러리이다.

requests를 사용하면 HTTP/1.1요청을 매우 쉽게 보낼수가 있고, URL에 쿼리 문자열을 수동으로 추가하거나 POST데이터를 형식 인코딩할 필요가 없으며, 연결 유지 및 HTTP 연결 풀링은 urlib3덕분에 자동으로 이루어진다.

설치

터미널에

$ python -m pip install requests

을 입력하여 설치한다.

혹은 아래의 링크를 참조하여 github 이나 tarball을 통해서 다운로드 할수 있다.
https://docs.python-requests.org/en/latest/user/install/#install

Requests 주요 함수

  • GET : 요청, 값을 가져오는 역할
  • POST : 생성, 액션
  • PUT : 수정, 덮어씌우기
  • DELETE : 삭제

GET 접속해보기(자신의 IP주소 알아보기)

GET 요청을 하면 자신의 IP 주소를 보내주는 사이트가 있다.
https://api.ipify.org/

import requests as req

res = req.get("https://api.ipify.org/")
print(res.status_code)
print(res.text)

ip주소와 상태값 200을 반환 받는다.

response를 받았을때 request는 어떤 것이냐를 알아볼때는
res.request로 작성한다.

import requests as req

res = req.get("https://api.ipify.org/")
print(res.request.method) #request 할때 메소드
print(res.request.headers) #header 정보

res를 선언할때 header의 속성을 추가 할 수 있다.

import requests as req

res = req.get("https://api.ipify.org/", headers={"hi" : "there"})
print(res.request.method)
print(res.request.headers)

이렇게 작성하면 출력된 header의 맨 뒤에 hi = there가 나오게 됨을 확인할 수 있다.

headers를 추가 할수 있고, 자신이 보낸 요청에 응답값이 제대로 오지 않았을 때 어떤 header를 보냈는지를 확인하기 위한 용도로 사용된다.

그 외에도 res.elapsed - 경과시간 , res.raw - 응답 요소는 응답으로 태스크를 종료한다.Response.Raw는 값과 선택적 응답 헤더로 응답한다.

좋은 웹페이지 즐겨찾기