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 相关文章推荐
PyChar学习教程之自定义文件与代码模板详解
Jul 17 Python
详解Tensorflow数据读取有三种方式(next_batch)
Feb 01 Python
Python Numpy 数组的初始化和基本操作
Mar 13 Python
Django开发中复选框用法示例
Mar 20 Python
Python实现读取SQLServer数据并插入到MongoDB数据库的方法示例
Jun 09 Python
python 并发编程 多路复用IO模型详解
Aug 20 Python
python异步编程 使用yield from过程解析
Sep 25 Python
python自动点赞功能的实现思路
Feb 26 Python
python 写函数在一定条件下需要调用自身时的写法说明
Jun 01 Python
使用python matploblib库绘制准确率,损失率折线图
Jun 16 Python
python使用建议与技巧分享(二)
Aug 17 Python
使用gunicorn部署django项目的问题
Dec 30 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
首页四格,首页五格For6.0(GBK)(UTF-8)[12种组合][9-18][版主安装测试通过]
2007/09/24 PHP
PHP基础学习小结
2011/04/17 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
2020/04/05 PHP
JavaScript 快捷键设置实现代码
2009/03/13 Javascript
jquery的ajax和getJson跨域获取json数据的实现方法
2014/02/04 Javascript
extjs 分页使用jsp传递数据示例
2014/07/29 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
jQuery实现当前页面标签高亮显示的方法
2015/03/10 Javascript
代码分析jQuery四种静态方法使用
2015/07/23 Javascript
js实现YouKu的漂亮搜索框效果
2015/08/19 Javascript
Angular.Js中过滤器filter与自定义过滤器filter实例详解
2017/05/08 Javascript
一次围绕setTimeout的前端面试经验分享
2017/06/15 Javascript
ES6学习教程之Map的常用方法总结
2017/08/03 Javascript
vue页面使用阿里oss上传功能的实例(二)
2017/08/09 Javascript
js断点调试经验分享
2017/12/08 Javascript
Vue页面骨架屏注入方法
2018/05/13 Javascript
jquery向后台提交数组的代码分析
2020/02/20 jQuery
js 使用ajax设置和获取自定义header信息的方法小结
2020/03/12 Javascript
在Vue中使用Echarts可视化库的完整步骤记录
2020/11/18 Vue.js
[36:43]NB vs Optic 2018国际邀请赛小组赛BO1 B组加赛 8.19
2018/08/21 DOTA
Python中使用PIPE操作Linux管道
2015/02/04 Python
Python max内置函数详细介绍
2016/11/17 Python
如何用Python实现简单的Markdown转换器
2018/07/16 Python
python在新的图片窗口显示图片(图像)的方法
2019/07/11 Python
python使用Thread的setDaemon启动后台线程教程
2020/04/25 Python
简述python Scrapy框架
2020/08/17 Python
纯CSS3制作页面切换效果的实例代码
2019/05/30 HTML / CSS
CSS3实现苹果手机解锁的字体闪亮效果示例
2021/01/05 HTML / CSS
HTML5+Canvas+CSS3实现齐天大圣孙悟空腾云驾雾效果
2016/04/26 HTML / CSS
新东方旗下远程教育网站:新东方在线
2020/03/19 全球购物
《狼》教学反思
2014/03/02 职场文书
竞选学生会演讲稿
2014/04/25 职场文书
中国梦演讲稿3分钟
2014/08/19 职场文书
教师纪念9.18事件演讲稿范文
2014/09/14 职场文书
毕业纪念册寄语大全
2015/02/26 职场文书
理想国读书笔记
2015/06/25 职场文书