python模拟登陆,用session维持回话的实例


Posted in Python onDecember 27, 2018

python模拟登陆的几种方法

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

1、先在浏览器中登录,然后打开开发者选项,找到一个请求方法为POST的请求,复制Requests Headers中的cookie在爬取需要登录的页面时加上此cookies即可

import requests
url = '......'
headers = {'cookies':'......'}
response = requests.get(url=url, headers=headers)

2、 模拟登录,并用session维持会话,用requests的session模拟登录后session会记录cookies,接下来的请求会被放在同一个会话中。举个简单例子,在 requests 中,如果直接利用 get()或 post()等方法的确可以做到模拟网页的请求,但是这实际 上是相当于不同的会话,也就是说相当于你用了两个浏览器打开了不同的页面。设想这样一个场景,第一个请求利用 post()方法登录了某个网站,第二次想获取成功登录后的自 己的个人信息,你又用了一次 get()方法去请求个人信息页面。 实际上,这相当于打开了两个浏览器, 这是两个完全不相关的会话,能成功获取个人信息吗?那当然不能

import requests
'''
下面的data是先在浏览器中登录,然后打开开发者选项,找到一个请求方法为POST的请求,复制里面的Form Data
'''
url = '......'
data = {
  username:'......',
  password:flz_sanqianchi,
  rememberMe:true,
  lt:LT-82465-9HtQnC7ZASZHohtnQlrqMvXo7cI2B7,
  execution:e1s1,
  }
headers = {'user-agent':'Mozolla/5.0'}
'''
这里用requests的session来请求网页,做到维持同一会话的目的
'''
session = requests.Session()
reqsonse = session.post(url=url, headers=headers, data=data)
'''
接下来就可以请求别的登陆后的页面,而不需要处理cookies
'''
url2 = '这里是已经登录后的某一页面'
response = session.get(url=url2, headers=headers)

以上这篇python模拟登陆,用session维持回话的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用cookielib库示例分享
Mar 03 Python
Python全局变量操作详解
Apr 14 Python
Python实现全角半角字符互转的方法
Nov 28 Python
Python实现注册登录系统
Aug 08 Python
Python方法的延迟加载的示例代码
Dec 18 Python
python实现抖音视频批量下载
Jun 20 Python
Python实现Restful API的例子
Aug 31 Python
Python3如何判断三角形的类型
Apr 12 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
May 13 Python
Tensorflow tensor 数学运算和逻辑运算方式
Jun 30 Python
pytorch损失反向传播后梯度为none的问题
May 12 Python
python执行js代码的方法
May 13 Python
python requests post多层字典的方法
Dec 27 #Python
解决python3运行selenium下HTMLTestRunner报错的问题
Dec 27 #Python
python批量从es取数据的方法(文档数超过10000)
Dec 27 #Python
python 与服务器的共享文件夹交互方法
Dec 27 #Python
通过pykafka接收Kafka消息队列的方法
Dec 27 #Python
python利用thrift服务读取hbase数据的方法
Dec 27 #Python
python hbase读取数据发送kafka的方法
Dec 27 #Python
You might like
这东西价格,可以买几台TECSUN S-2000
2021/03/02 无线电
PHP中break及continue两个流程控制指令区别分析
2011/04/18 PHP
PHP插入排序实现代码
2013/04/04 PHP
php cli配置文件问题分析
2015/10/15 PHP
解决微信授权回调页面域名只能设置一个的问题
2016/12/11 PHP
Laravel统一错误处理为JSON的方法介绍
2020/10/18 PHP
firefox浏览器下javascript 拖动层效果与原理分析代码
2007/12/04 Javascript
2014最热门的JavaScript代码高亮插件推荐
2014/11/25 Javascript
15个jquery常用方法、小技巧分享
2015/01/13 Javascript
使用jquery组件qrcode生成二维码及应用指南
2015/02/22 Javascript
jQuery实现的动态伸缩导航菜单实例
2015/05/07 Javascript
js针对ip地址、子网掩码、网关的逻辑性判断
2016/01/06 Javascript
JQuery的Pager分页器实现代码
2016/05/03 Javascript
js使用html2canvas实现屏幕截取的示例代码
2017/08/28 Javascript
使用live-server快速搭建本地服务器+自动刷新的方法
2018/03/09 Javascript
Vue.js单向绑定和双向绑定实例分析
2018/08/14 Javascript
Vue2.x中利用@font-size引入字体图标报错的解决方法
2018/09/28 Javascript
JS实现处理时间,年月日,星期的公共方法示例
2019/05/31 Javascript
vue data恢复初始化数据的实现方法
2019/10/31 Javascript
详细分析React 表单与事件
2020/07/08 Javascript
[03:11]2014DOTA2国际邀请赛-VG掉入败者组 独家专访357
2014/07/19 DOTA
Python使用turtule画五角星的方法
2015/07/09 Python
python实现装饰器、描述符
2018/02/28 Python
python绘制立方体的方法
2018/07/02 Python
DES加密解密算法之python实现版(图文并茂)
2018/12/06 Python
Python requests模块安装及使用教程图解
2020/06/30 Python
美国综合购物商城:UnbeatableSale.com
2018/11/28 全球购物
美国围栏公司:Walpole Outdoors
2019/11/19 全球购物
Hotels.com拉丁美洲:从豪华酒店到经济型酒店的预定优惠和折扣
2019/12/09 全球购物
中专药剂专业应届毕的自我评价
2013/12/27 职场文书
《日月潭》教学反思
2014/02/28 职场文书
工商企业管理专业自荐信范文
2014/04/12 职场文书
财务务虚会发言材料
2014/10/20 职场文书
统计员岗位职责
2015/02/11 职场文书
初中班长竞选稿
2015/11/20 职场文书
《梅花魂》教学反思
2016/02/18 职场文书