
requests는 HTTP Method 별로 다른 함수를 호출하여 접속할 수 있습니다.
import requests
response = requests.get(url="https://www.google.com")
print(response.status_code)
print(response.text)
Method 별로 다른 함수를 호출하기에는 불편할 수 있지만
getattr을 이용하면 문자열로 함수를 호출할 수 있기 때문에
다음과 같이 한 줄의 코드로 다양한 Method를 호출할 수 있습니다.
import requests
method = "post"
url = "https://www.google.com"
data = {"id":"test"}
cookies = {"test":"test"}
response = getattr(requests, method)(url=url, data=data, cookies=cookies)
print(response.cookies.get_dict())
단순 requests를 이용한 접속을 하면 다른 페이지에서
쿠키를 통한 인증 과정에 불편함을 느낄 수 있습니다.
하지만 Session을 이용하면 쿠키를 요청에 자동으로 실어서 이용할 수 있습니다.
import requests
method = "post"
url1 = "https://www.example.com/login"
url2 = "https://www.example.com/users"
data = {"id":"test"}
with requests.Session() as session:
session.post(url=url1, data=data)
session.get(url=url2)