python模拟登陆,用session维持会话


客户端向服务器发送请求,cookie则是表明我们身份的标志。而“访问登录后才能看到的页面”这一行为,恰恰需要客户端向服务器证明:“我是刚才登录过的那个客户端”。于是就需要cookie来标识客户端的身份,以存储它的信息(如登录状态)

模拟登录,并用session维持会话,用requests的session模拟,登录后session会记录cookies,接下来的请求会被放在同一个会话中。

import requests
class test:
def __init__(self):
self.supplier_session = requests.session() #这里用requests的session来请求网页,做到维持同一会话的目的
self.header ={}

#系统登录
def supplier_login(self):
supplier_login_url = supplier_url + "supplier/login"
data = {
"username": supplier_name,
"password": supplier_passwd,
}
res = self.supplier_session.post(supplier_login_url, data=data)
res = res.json()
if res["retCode"]==200 :
print("供应商系统登录成功")
else:
print("供应商系统登录失败")

      
    #接下来就可以请求别的登陆后的页面,而不需要处理cookies
    url2 = '这里是已经登录后的某一页面'
    response = supplier_session.post(url=url2, data=data)



类中为什么要定义__init__()方法参考文章 https://blog.csdn.net/geerniya/article/details/77487941
原文地址:https://www.cnblogs.com/tuxiaomeng/p/10918118.html