python使用requests.session模拟登录


Posted in Python onAugust 09, 2019

最近开发一套接口,写个Python脚本,使用requests.session模拟一下登录.

因为每次需要获取用户信息,登录需要带着session信息,所以所有请求需要带着session。

请求使用post方式,请求参数类型为raw方式,参数为json类型。

登录接口参数和结果如下:

 python使用requests.session模拟登录

脚本如下:

1. 引入需要的第三方包

#! /usr/bin/env python3
# -*- coding: utf-8 -*-

import requests
# import re
import json
# from bs4 import BeautifulSoup

2. 请求头设置,设置请求参数, 需要Python字典转为json字符串

url = 'http://beanhome.com/user/login'
header = {
    "Content-Type": 'application/json',
    "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.87 Safari/537.36"
  }
# Python字典数据转为json,需要使用json.dumps
data = {
    "email": "common@moviebook.com",
    "passwd": "123456"
  }
# 通过session模拟登录,每次请求带着session
sess = requests.Session()
f = sess.post(url, data=json.dumps(data), headers=header)

3. 打印登录成功后结果

print(json.loads(f.text))
# soup = BeautifulSoup(f.content, "html.parser")
# {'status': 1, 'msg': '操作成功', 'time': 1565317698, 'element': {'id': 1, 'uid': 1, 'name': 'common', 'email': 'common@moviebook.com', 'company': '客户公司', 'type': 1, 'title': '普通用户'}}

4. 打印菜单结果

url = 'http://beanhome.com/user/getMenu'
# 获取菜单
f = sess.post(url,headers=header)
print(json.loads(f.text))

5. 打印配置选项结果

# 获取配置选项
url= 'http://beanhome.com/user/getOptionList'

result = sess.post(url, headers=header)
# print(json.loads(result.text))
for j,k in json.loads(result.text)['element'].items():
  print(j,k)

总结

以上所述是小编给大家介绍的python使用requests.session模拟登录,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
简单谈谈python的反射机制
Jun 28 Python
解决Python requests 报错方法集锦
Mar 19 Python
Python开发的实用计算器完整实例
May 10 Python
Python探索之修改Python搜索路径
Oct 25 Python
python实现将多个文件分配到多个文件夹的方法
Jan 07 Python
python 杀死自身进程的实现方法
Jul 01 Python
Python识别html主要文本框过程解析
Feb 18 Python
jenkins+python自动化测试持续集成教程
May 12 Python
pycharm全局搜索的具体步骤
Jul 28 Python
Django如何在不停机的情况下创建索引
Aug 02 Python
python中entry用法讲解
Dec 04 Python
Python可视化学习之seaborn调色盘
Feb 24 Python
如何在Cloud Studio上执行Python代码?
Aug 09 #Python
python切片(获取一个子列表(数组))详解
Aug 09 #Python
Python多叉树的构造及取出节点数据(treelib)的方法
Aug 09 #Python
一行python实现树形结构的方法
Aug 09 #Python
解决django同步数据库的时候app models表没有成功创建的问题
Aug 09 #Python
Python3 venv搭建轻量级虚拟环境的步骤(图文)
Aug 09 #Python
Python Django 命名空间模式的实现
Aug 09 #Python
You might like
JAVA/JSP学习系列之四
2006/10/09 PHP
PHP处理Oracle的CLOB实例
2014/11/03 PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
2016/02/26 PHP
PHP code 验证码生成类定义和简单使用示例
2020/05/27 PHP
javascript 面向对象编程 聊聊对象的事
2009/09/17 Javascript
HTML DOM的nodeType值介绍
2011/03/31 Javascript
JS代码防止SQL注入的方法(超简单)
2016/04/12 Javascript
jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】
2016/06/16 Javascript
Angular 路由route实例代码
2016/07/12 Javascript
jQuery实现的自适应焦点图效果完整实例
2016/08/24 Javascript
Bootstrap选项卡学习笔记分享
2017/02/13 Javascript
jQuery的三种bind/One/Live/On事件绑定使用方法
2017/02/23 Javascript
如何写好你的JavaScript【推荐】
2017/03/02 Javascript
AngularJS实现页面定时刷新
2017/03/14 Javascript
js实现不提示直接关闭网页窗口
2017/03/30 Javascript
bootstrap 设置checkbox部分选中效果
2017/04/20 Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
2017/06/12 Javascript
JavaScript之事件委托实例(附原生js和jQuery代码)
2017/07/22 jQuery
vue中rem的配置的方法示例
2018/08/30 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
详解JavaScript中精度失准问题及解决方法
2020/02/04 Javascript
python 全文检索引擎详解
2017/04/25 Python
python使用opencv按一定间隔截取视频帧
2018/03/06 Python
Python之csv文件从MySQL数据库导入导出的方法
2018/06/21 Python
Mytheresa中国官网:德国时尚奢侈品商城
2017/08/04 全球购物
Ootori在线按摩椅店:一家专业的按摩椅制造商
2019/04/10 全球购物
销售自荐信
2013/10/22 职场文书
软件售后服务承诺书
2014/05/21 职场文书
2014学校领导四风对照检查材料思想汇报
2014/09/23 职场文书
高校师德师风自我剖析材料
2014/09/29 职场文书
个人租房协议书样本
2014/10/01 职场文书
精神病医院见习报告
2014/11/03 职场文书
少先大队干部竞选稿
2015/11/20 职场文书
银行柜员优质服务心得体会
2016/01/22 职场文书
话题作文之呼唤
2019/12/18 职场文书
SpringBoot整合Redis入门之缓存数据的方法
2021/11/17 Redis