Python接口测试-保持登录状态
#coding:utf-8
import requests
import json
#登录
url ="https://passport.cnblogs.com/user/signin"
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36"
}
s = requests.session()
r = requests.post(url,headers=headers,verify=False)
print s.cookies
#添加登录需要的2个cookie
c = requests.cookies.RequestsCookieJar()
c.set('.CNBlogsCookie', 'A971DD2942128EAA0F5E00858EA4B81D4FB9735D7D2B74F55049E4395468FE4371E3957620BD32243AAE9B38DCE87678AAE176B84018C2C74AAD7EBACA7EB9BF41BF2AB52D70C54D582943C0FFC4D8414C8AD0E3781E6A3B60DF9C5A95277DBF4F4A889361B3C0B23C8FFDCF99EA99011B1D683B') # 填上面抓包内容
c.set('.Cnblogs.AspNetCore.Cookies','CfDJ8EklyHYHyB5Oj4onWtxTnxbudG12uvbp5O0hsgMHfS7uDHdBI-oudC59HIAyQpBr7p43PLYZ2b9bDwe03tGZiI1zw14hq52dSf5XjPFAM4a7wxOTQT5plQPEWlx0bmBJMiLksEGPGtZoJobUv96-0jjDyoz1p8tCKHY97UT8M0rU004I3LgPhek1jVTCs_DEtSPA6vVAyvX7wDARXE7vqjplD-sdw_pv9Sw022K7I7tmyYdrBvRSjgHBkd3WzcA7Scs2k5P2_l8QRLgE-8y-_SbvsOrW42OTYWlctrK6m_jttlZ6m0tTx6WEQNKJjmlxc0XQn8nv_H9y3ouxAuX5MZP_8KlH_ioDcJENZgLitimmGc07V560CyMLJtw4ss_e3w2i6Q6paZPMqK5gd8AIQ2IvD7gmSohRF2Zgf7Xv0zytG8RAnVPcwrX45i4UBm-QdBKCM312e36_GUTHKcnyLT-K61vA9dz0ZPK1kFVqW_vEi-dK-2MeeiCIJkMK2SEcUT18vigP-lh3jqOhIMfT-zPVRiSdXnNKNKyAy0yfuXWWjH6YanPY1n9OpY8WLy2XjighOvl5qcUa0q9LXtScb2M') # 填上面抓包内容
c.set('AlwaysCreateItemsAsActive',"True")
c.set('AdminCookieAlwaysExpandAdvanced',"True")
s.cookies.update(c)
print s.cookies
# #登录成功后发送评论
# url3 = "https://ing.cnblogs.com/ajax/ing/Publish"
# body3 = {"content":"发送测试",
# "publicFlag":1}
# r3 = s.post(url3,data=body3, verify=False)
# print r3.content.decode("utf-8")
# r3 = json.loads(r3.content.decode("utf-8"))
# try:
# print( r3["isSuccess"])
# if r3["isSuccess"] == True:
# print ("发送成功")
# except Exception as msg:
# raise RuntimeError(r3)
# #登录后查看评论
# url5 = "https://home.cnblogs.com/ajax/feed/recent?alias=2312672"
# body5 = { "feedListType":"me",
# "appId":"",
# "pageIndex":1,
# "pageSize":30,
# "groupId":""
# }
# r5 = s.post(url5,data=body5,verify=False)
#登录后删除评论
url4 = "https://home.cnblogs.com/ajax/feed/DeleteFeed"
body4 ={"feedUserId":"102c3a11-ebc1-43a8-84ee-08d8d71b5727",
"id":"60375dc263abf8af0269ca68"
}
r4 = s.post(url4,data=body4, verify=False)
print r4.content.decode("utf-8")
r4 = json.loads(r4.content.decode("utf-8"))
try:
print( r4["isSuccess"])
if r4["isSuccess"] == True:
print ("删除成功")
except Exception as msg:
raise RuntimeError(r4)
Python接口测试-保持登录状态的更多相关文章
- Python接口测试-利用登录后的session用到登录后的接口中
有些接口是在登录后才能调用的,例如“立即出借”只有在登录后才能到出借窗口,解决: 主要是添加了: s =requests.session() 完整代码: '''登录 ''' print('*'*100 ...
- python+pytest接口自动化(9)-cookie绕过登录(保持登录状态)
在编写接口自动化测试用例或其他脚本的过程中,经常会遇到需要绕过用户名/密码或验证码登录,去请求接口的情况,一是因为有时验证码会比较复杂,比如有些图形验证码,难以通过接口的方式去处理:再者,每次请求接口 ...
- Postman+Postman interceptor的安装和使用-解决把chrome浏览器登录状态同步到postman进行有依赖的接口测试 Postman 使用方法详解
Postman+Postman interceptor的安装和使用-解决把chrome浏览器登录状态同步到postman进行有依赖的接口测试 问题引入:做接口测试时,有依赖关系的接口往往不好测试( ...
- 使用robotframework做接口测试三——保持登录状态
调用登录接口登录了,其他的接口怎么保持登录状态呢? 首先来看一看,web端或者说客户端是怎么样用cookie/token等保持登录状态的.一般来说,cookie都会在登录接口由服务端返回,而且会是在 ...
- Python接口测试实战1(上)- 接口测试理论
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战2 - 使用Python发送请求
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战1(下)- 接口测试工具的使用
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- 你的第一个接口测试:Python 接口测试
前言: 首先我们先明确一个概念,什么叫接口.什么叫接口测试? 接口的全称叫[Application Programming Interface 又叫API],是提供应用程序与开发人员基于某软件或硬件得 ...
- 零基础Python接口测试教程
目录 一.Python基础 Python简介.环境搭建及包管理 Python基本语法 基本数据类型(6种) 条件/循环 文件读写(文本文件) 函数/类 模块/包 常见算法 二.接口测试快速实践 简单接 ...
随机推荐
- K8S(08)交付实战-交付jenkins到k8s集群
k8s交付实战-交付jenkins到k8s集群 目录 k8s交付实战-交付jenkins到k8s集群 1 准备jenkins镜像 1.1 下载官方镜像 1.2 修改官方镜像 1.2.1 创建目录 1. ...
- C++ part8
1.volatile关键字 在C++中,对volatile修饰的对象的访问,有编译器优化上的副作用: 不允许被编译器优化,提供特殊地址的稳定访问(只从内存中读取). 有序性,编译器进行优化时,不能把对 ...
- FZU 2129 子序列个数(DP)题解
题意:求子序列种数 思路:dp[i]代表到i的所有种数,把当前i放到末尾,那么转移方程dp[i] = dp[i - 1] + dp[i -1],但是可能存在重复,比如1 2 3 2,在第2位置的时候出 ...
- Gym 101170F Free Weights(二分)题解
题意:给出两行,每一行都有n个数组,一共有2 * n个,大小为1~n,每个有两个.现在可以进行操作:拿出一个物品i,然后放到一个空格,花费i.可以任意平移物品,平移没有花费.每一行空间无限.要求你把一 ...
- Bash on Ubuntu on Windows ( Windows Subsystem for Linux)
1 # Bash on ubuntu on Windows http://www.cnblogs.com/anonymous-ufo/p/6143480.html 1 1 如何启用Bash on u ...
- 5分钟入门websocket
5 个步骤快速掌握消息发送和接收 获取您的 appkey 先注册一个irealtime账号,然后登录到后台管理端,创建一个免费应用,就能得到您的 appkey.点击注册 各种前端生态端集成 ireal ...
- Github Action 快速上手指南
前言 各位读者,新年快乐,我是过了年匆忙赶回上海努力搬砖的蛮三刀. Github之前更新了一个Action功能(应该是很久以前了),可以实现很多自动化操作.用来替代用户自己设置的自动化脚本(比如:钩子 ...
- [C语言学习笔记五]复合语句和操作符的区分
复合语句的概念和用法 在部分时候,语句必须要与其他语句相结合才能实现应有的功能.放在花括号 {} 里的代码叫做复合语句. 例如: int a,b; if (a == b) ... ... /* 这一部 ...
- java自学第3期——继承、多态、接口、抽象类、final关键字、权限修饰符、内部类
一.继承: 关键字extends /* 定义一个父类:人类 定义父类格式:public class 父类名称{ } 定义子类格式:public class 子类名称 extends 父类名称{ } * ...
- 【SVM】kaggle之澳大利亚天气预测
项目目标 由于大气运动极为复杂,影响天气的因素较多,而人们认识大气本身运动的能力极为有限,因此天气预报水平较低,预报员在预报实践中,每次预报的过程都极为复杂,需要综合分析,并预报各气象要素,比如温度. ...