외로운 Nova의 작업실
파이썬 requests 프로그래밍 - 1(기초) 본문
- 파이썬 requests 모듈 기초
<패키지 설치>
pip install requests
<임포트>
import requests
<메서드>
GET 방식: requests.get()
POST 방식: requests.post()
PUT 방식: requests.put()
DELETE 방식: requests.delete()
<응답상태>
응답상태는 객체의 status_code 속성으로 간단하게 얻을 수 있습니다.
>>> response = requests.get("https://jsonplaceholder.typicode.com/users/1")
>>> response.status_code
200
>>> response = requests.get("https://jsonplaceholder.typicode.com/users/100")
>>> response.status_code
404
>>> response = requests.post("https://jsonplaceholder.typicode.com/users")
>>> response.status_code
201
<응답 내용>
응답 내용(HTML파일)은 content 속성과 text 속성으로 볼 수 있습니다. 다만 content 속성은 바이너리 형태고 text는 UTF-8로 인코딩된 상태므로 text로 보는 것이 좋습니다.
>>> response.text
<get 방식 요청 쿼리>
get 방식은 param 옵션을 사용하면 쿼리스트링을 사전의 형태로 넘길 수 있습니다.
>>> response = requests.get("https://jsonplaceholder.typicode.com/posts", params={"userId": "1"}
<post 방식 요청 쿼리>
post 방식은 data 옵션을 사용하면 form 포맷의 데이터를 전송할 수 있습니다. 사전의 형태로 넘깁니다.
>>> requests.post("https://jsonplaceholder.typicode.com/users", data={'name': 'Test User'})
<header 변경>
get 방식과 post 방식을 사용할때 header을 변경해줄 수 있습니다. 파이썬의 requests 라이브러리는 헤더를 많이 담지않아서 웹사이트에서 거부될 수 있습니다. 이에따라 자세히 헤더를 담아줄 수 있습니다.
header = {"User-Agent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36"}
requests.get(url, headers = header)
<cookie 변경>
쿠키또한 get, post 요청에 담아줄 수 있습니다.
cookie = { "uid" : "F6nZ2GOHAwKccnl1YEihdQ=="}
requests.get(url, cookies = cookie}
<int()함수>
int(value, base) : value(문자,실수) 등을 base 진법으로 인식해서 10진수로 변환
ex) int("111", 2)는 111을 2진수값으로 인식해서 10진수 값인 7을 반환
<int.to_byte() 함수>
value 값을 10진수로보고 16진수 헥사값으로 변환시킵니다.이때 바이트 길이는 length 이고 byteorder(big-endian) 방식으로 변환해줍니다.
int.to_bytes(value, length, byteorder='big', signed=False)
ex) int.to_bytes(15571128, 4, "big") 반환값 : b'\x00\xed\x98\xb8'
<decode("utf-8")>
bytes.decode("") : hex값으로 표현된 bytes을 인자값 방식으로 decode 합니다.
ex) b'\xed\x98\xb8'.decode("utf-8") : '호'
'Programming > Python' 카테고리의 다른 글
파이썬 프로그래밍 정리 (0) | 2023.01.21 |
---|