
- 데이터를 전송할 필드 이름
- ex) 폼 예시<form method="post" action="processing.php">
First name: <input type="text" name="firstname"><br>
Last name: <input type="text" name="lastname"><br>
<input type="submit" value="submit">
</form>
import requests
params = {'firstname': 'Ryan', 'lastname': 'Mitchell'}
r = requests.post('http://pythonscraping.com/files/processing.php', data=params)
print(r.text)
import requests
params = {'username': 'koo', 'password': 'password'}
r = requests.post('https://pythonscraping.com/pages/cookies/welcome.php',
params)
print('Cookie is set to', r.cookies.get_dict()) # {'loggedin': 1, 'username': 'koo'}
print('-' * 20)
print(Going to profile page...')
r = requests.get('https://pythonscraping.com/pages/cookies/profile.php')
print(r.text) # Hey koo! Looks like you're still logged into the site!
이런 방법은 단순한 상황에서는 잘 작동하지만, 복잡한 사이트는 경고 없이 자주 쿠키를 수정하기도 하고, 쿠키에 대해 생각하지 못하고 코드를 작성할 수도 있음
→ requests의 session 함수를 사용하면 이러한 문제를 해결 가능
import requests
session = requests.Session()
params = {'username': 'koo', 'password': 'password'}
s = session.post('https://pythonscraping.com/pages/cookies/welcome.php', params)
print('Cookie is set to: ', s.cookies.get_dict())
print('-' * 20)
print('Going to profile page...')
s = session.get('https://pythonscraping.com/pages/cookies/profile.php')
print(s.text)
import requests
from requests.auth import AuthBase, HTTPBasicAuth
auth = HTTPBasicAuth('koo', 'password')
r = requests.post(url='https://pythonscraping.com/pages/auth/login.php', auth=auth)
print(r.text)
HTTPBasicAuth 객체를 auth 매개변수로 요청에 넣어 처리