如何使用requests后登录网站后,保持Session继续实现浏览、下载等效果?
两个request之前都是单独的请求,需要保持Session,重点看下面第二段代码。
下面的代码,实现的是一个网站通过request的post方式,用户名+密码登录。
import requests url = "http://?????.com/SvltLogin" response = requests.post(url, data={"txtUsr_id": "00000001", "txtPassword": "mima"}) response.encoding = "GBK" print(response.text)
下面的代码,通过Session登录,浏览需要登录后的页面
import requests url = "http://?????.com/SvltLogin" s = requests.session() #建立一个Session response = s.post(url, data={"txtUsr_id": "00000001", "txtPassword": "mima"}) #session登录网站 response = s.get("http://?????.com/SvltLogout") #session浏览页面 response.encoding = "GBK" print(response.text)
下面的代码是登录,下载,登出
#!/usr/bin/python import requests url = "http://?????.com/SvltLogin" s = requests.session() # 登录 response = s.post(url, data={"txtUsr_id": "00000001", "txtPassword": "mima"})
# 下载文件
url = "http://?????.com/a.csv" response = s.get(url) with open("C:\\a.csv", "wb") as f: f.write(response.content)
# 网站退出
response = s.get("http://?????.com/SvltLogout") response.encoding = "GBK" print(url)
原文:https://blog.csdn.net/jyh_jack/article/details/82457953
如果本文对你有帮助,欢迎打赏本站