본문 바로가기
보안 공부/Web

[Python] Request 모듈 사용 방법

by 그적 2020. 4. 30.

기본적으로 맨 위에 requests 모듈을 import 해줘야한다.

import requests

 

1. GET 방식으로 파라미터 넘기기

import requests

url = "https:// ... "			#요청을 보낼 url을 입력.
para = {				#보낼 파라미터를 변수에 넣어준다. 이때, key:value 형식으로 입력.
	'id' : 'abcd',
	'pw' : 1234
}

response = requests.get(url, params=para)		#params라는 인자를 사용

print(response.status_code)		#응답코드 출력

이때, 중요한 부분이 파라미터 인자값은 key : value 형태이어야한다. 또한 params라는 인자 사용해 전달한다.

 

2. POST 방식으로 data 넘기기

- dict 타입 : {key : value}로 이루어진 쌍들로 이뤄져있다.

import requests

url = "https:// ... "			#요청을 보낼 url을 입력.
data = {				#보낼 데이터를 변수에 넣어준다. 이때, key:value 형식으로 입력.
	'id' : 'abcd',
	'pw' : 1234
}

response = requests.get(url, data=data)		#data라는 인자를 사용

print(response.status_code)		#응답코드 출력

이때, 중요한 부분이 파라미터 인자값은 key : value 형태이어야한다. 또한 GET방식과 달라진 점은 data라는 인자 사용해 전달한다는 것이다. 

- str 타입 : dictionary 구조를 유지하면서 문자열로 전달해야할 때 사용한다.

import requests, json			#json 모듈을 import해준다.

url = "https:// ... "
data = {				#보낼 데이터를 변수에 넣어준다. 이때, key:value 형식으로 입력.
	'id' : 'abcd',
	'pw' : 1234
}

response = requests.get(url, data=json.dumps(data))		#data라는 인자를 사용

print(response.status_code)		#응답코드 출력

 

3. 헤더 추가, 쿠키 추가

import requests

url = "https:// ... "
cookies = {'session_id' : ' ... '}						#쿠키와 헤더 입력
headers = {'Content-Type': 'application/json; charset=utf-8'}

data = {
	'id' : 'abcd',
	'pw' : 1234
}

response = requests.get(url, data=data, headers=headers, cookies=cookies)	#cookies와 headers 인자

print(response.status_code)		#응답코드 출력

 

4. 응답 받기( 

- response.text    >>    응답을 txt형식으로 출력
- response.content      >>    주로 음악, 비디오 등 응답을 byte로 받아 저장시킴
- response.request       >>   내가 보낸 request 객체에 접근
- response.status_code     >>   응답코드
- response.json()      >>    딕셔너리 타입으로 변환
- response.url     >>    요청 url 확인

 이 외에도 다양한 응답들을 받을 수 있다.

 

 

 

댓글