requests
- (vs code) pip install requests 를 입력하여 설치한다.
- 파이썬에서 http 통신을 가능하게 해주는 모듈이다.
- 웹브라우저 없이 코드로 받아온다는 것이 특징이 있다.
- beautifulsoup, api 통신, 카카오 결제등과 함께 쓰인다.
API (http 통신)
- GET: 데이터 정보 요청
- POST: 데이터 생성 요청
- PUT: 데이터 수정 요청
- DELETE: 데이터 삭제 요청
서버에서 응답(response), 내용(content), 상태코드(status code)를 받아온다.
*content : 서버가 클라이언트에게 보여줄 내용. bytes 타입의 데이터
*status code: 통신이 정상적으로 진행이 되었는지 상태 코드를 받아옴
status code 예시
더보기
2xx - 성공
- ㄱ200 : 정상 통신 완료
- 201 : 정상 생성 완료
3xx - 페이지 리다이렉션
- 301 : url 변경
4xx-클라이언트 오류
- 400: 클라이언트가 잘못 된 요청을 보냄
- 401: 인증되지 않은 사용자
- 403 : 액세스 권한이 없음
5xx-서버 오류
- 500 : 서버에서 처리할 수 없음
- 502 : 게이트웨이에서 잘못된 응답을 받음
통신 테스트 사이트 : https://jsonplaceholder.typicode.com/
get 요청 테스트 코드
더보기
import requests
from pprint import pprint
#통신할 base url
url = “ https://jsonplaceholder.typicode.com/”
#user/1 정보를 받아옴
r = requests.get(f”{url}users/1”)
pprint({
“contents”: r.text,
“status_code”: r.status_code,
})
#데이터는 json 형식으로 가져옴
post 요청 테스트코드
더보기
import requests
from pprint import pprint
# 통신 할 base url
url = "https://jsonplaceholder.typicode.com/"
# 데이터 생성 값
user = {
"name": "sparta",
"email": "sparta@test.com",
"phone": "010-0000-0000",
}
r = requests.post(f"{url}users", data=user)
#PUT 사용법 : r = requests.put(f"{url}users", data=user)
#DELETE 사용법 : r = requests.delete(f"{url}users", data=user)
pprint({
"contents": r.text,
"status_code": r.status_code,
})
'Python' 카테고리의 다른 글
| [Python] CSV(comma-separated values) 파일 (0) | 2023.03.22 |
|---|---|
| [Python] json 파일 (0) | 2023.03.22 |
| [Python] 정규표현식(regular expression) (0) | 2023.03.22 |
| [Python] 예외처리문(try-except) (0) | 2023.03.22 |
| [Python] 클래스(Class) (0) | 2023.03.22 |