有的网站需要登录才能访问。这时候可以用requests模块中的session保持会话。session在发起请求的时候,会自动保存和发送cookie以达到保持会话的目的

下面以17k小说网为例介绍session的用法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 17k小说网
import requests

# 开启session对话
session = requests.session()
# 登录地址
login_url = 'https://passport.17k.com/ck/user/login'
# 我的书
my_book_url = "https://user.17k.com/ck/author/shelf?page=1&appKey=2406394919"
# 登录参数
data = {
"loginName": "13723232122",
"password": "ren41021213"
}
# 用session发起登录请求,会保存cookie。再次用session发送请求的时候就会发送cookie到服务器。
session.post(login_url, data=data)
my_book = session.get(my_book_url)
print(my_book.json())