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实现的登录和操作开心网脚本分享
Jul 09 Python
python中的字典详细介绍
Sep 18 Python
跟老齐学Python之从格式化表达式到方法
Sep 28 Python
Python中使用select模块实现非阻塞的IO
Feb 03 Python
python通过pil为png图片填充上背景颜色的方法
Mar 17 Python
使用C++扩展Python的功能详解
Jan 12 Python
django框架自定义用户表操作示例
Aug 07 Python
python读取csv和txt数据转换成向量的实例
Feb 12 Python
Python字符串大小写转换拼接删除空白
Sep 19 Python
python 列表、字典和集合的添加和删除操作
Dec 16 Python
tensorflow模型文件(ckpt)转pb文件的方法(不知道输出节点名)
Apr 22 Python
python使用scapy模块实现ping扫描的过程详解
Jan 21 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
制作美丽的拉花
2021/03/03 冲泡冲煮
Laravel框架表单验证详解
2014/09/04 PHP
PHP程序员的技术成长规划
2016/03/25 PHP
PHP convert_uudecode()函数讲解
2019/02/14 PHP
JavaScript实现url地址自动检测并添加URL链接示例代码
2013/11/12 Javascript
javascript实现的元素拖动函数宿主为浏览器
2014/07/21 Javascript
JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
2015/11/15 Javascript
学习javascript面向对象 javascript实现继承的方式
2016/01/04 Javascript
javascript HTML5 Canvas实现圆盘抽奖功能
2016/04/11 Javascript
js实现div模拟模态对话框展现URL内容
2016/05/27 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
Vue如何使用混合Mixins和插件开发详解
2020/02/05 Javascript
vue实现下载文件流完整前后端代码
2020/11/17 Vue.js
[46:16]2018DOTA2亚洲邀请赛3月30日 小组赛B组 iG VS VP
2018/03/31 DOTA
Python解析最简单的验证码
2016/01/07 Python
Python zip()函数用法实例分析
2018/03/17 Python
numpy中三维数组中加入元素后的位置详解
2019/11/28 Python
flask 框架操作MySQL数据库简单示例
2020/02/02 Python
基于python实现matlab filter函数过程详解
2020/06/08 Python
css3实现文字扫光渐变动画效果的示例
2017/11/07 HTML / CSS
澳大利亚家具和家居用品在线商店:Interiors Online
2018/03/05 全球购物
欧洲最大的高尔夫零售商:American Golf
2019/09/02 全球购物
描述内存分配方式以及它们的区别
2016/10/15 面试题
决心书标准格式
2014/03/11 职场文书
保险经纪人求职信
2014/03/11 职场文书
团日活动总结范文
2014/04/25 职场文书
5s推行计划书
2014/05/06 职场文书
我的梦想演讲稿500字
2014/08/21 职场文书
防灾减灾日活动总结
2014/08/26 职场文书
2014年接待工作总结
2014/11/26 职场文书
2014年房产经纪人工作总结
2014/12/08 职场文书
奠基仪式致辞
2015/07/30 职场文书
《丑小鸭》教学反思
2016/02/19 职场文书
高中化学教学反思
2016/02/22 职场文书
初中政治教师教学反思
2016/02/23 职场文书
MySQL普通表如何转换成分区表
2022/05/30 MySQL