python+request 常用基础学习笔记
1、pycharm,避免控制台输出的json内容中文出现乱码。
#注:乱码为Unicode格式:\u6d4b\u8bd5。加入如下代码后正确返回中文:测试
get_result = r.json()
print json.dumps(get_result, encoding="utf-8", ensure_ascii=False)
2、接口性能响应时间的获取(测试接口慢请求)
requests.post(url=url, data=data, headers=headers, verify=False, timeout=15) #请求头中加入timeout
print ("请求此接口的响应时间:"+str(r.elapsed.total_seconds())) #r.elapsed.total_seconds() 获取接口的响应时间
3、响应内容
r.raw #返回原始响应体,也就是urllib的renponse对象,返回结果示例:<urllib3.response.HTTPResponse object at 0x1097732d0>
r.headers #已字典对象存储服务器响应头,此字典比较特殊,字典键不区分大小写,若键不存在则返回None
r.text #字符串方式的响应体,返回的是文本,type 是'unicode'
r.json() #request中内置的json解码器,返回的是json格式数据,type 是”dict"
r.content #字节方式的响应体(也就是二进制的数据),想获取图片、文件等,则可使用此方式,type 是 “str"
r.raise_for_status() #失败请求(非200响应)跑出异常,若是200,则返回None。
r.request #返回请求的类型,post或者get等
r.url #获取请求的URL a = (r.text,r.encoding) #获取的type 是 ”tuple"
print a r.encoding #获取响应的编码方式。注:通过r.encoding获取的若不是utf-8的格式,可使用 r.encoding='utf-8'设定
4、获取响应头中的某个值
print r.headers #可获取到全部的headers中内容,因返回的是字典,所以可直接取值
print r.headers['Content-Type'] #获取某个请求头中的参数值内容
5、获取响应体中的某个值,用来做测试结果的校验
r.json() #已字典的格式,获取到reponse内容
r.json()["msg"] #获取到reponse中的msg值
r.json()["data"]["uuid"] #获取到reponse中的data下uuid的值。注:自己获取什么值,根据r.json()的返回字典内容层级,依次查找值。
6、
python+request 常用基础学习笔记的更多相关文章
- Spark (Python版) 零基础学习笔记(一)—— 快速入门
由于Scala才刚刚开始学习,还是对python更为熟悉,因此在这记录一下自己的学习过程,主要内容来自于spark的官方帮助文档,这一节的地址为: http://spark.apache.org/do ...
- Spark (Python版) 零基础学习笔记(二)—— Spark Transformations总结及举例
1. map(func) 将func函数作用到数据集的每个元素,生成一个新的分布式的数据集并返回 >>> a = sc.parallelize(('a', 'b', 'c')) &g ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- Java基础学习笔记总结
Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...
- $《利用Python进行数据分析》学习笔记系列——IPython
本文主要介绍IPython这样一个交互工具的基本用法. 1. 简介 IPython是<利用Python进行数据分析>一书中主要用到的Python开发环境,简单来说是对原生python交互环 ...
- Oracle基础学习笔记
Oracle基础学习笔记 最近找到一份实习工作,有点头疼的是,有阶段性考核,这...,实际想想看,大学期间只学过数据库原理,并没有针对某一数据库管理系统而系统的学习,这正好是一个机会,于是乎用了三天时 ...
- 尚学堂JAVA基础学习笔记
目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...
- 7 种 Javascript 常用设计模式学习笔记
7 种 Javascript 常用设计模式学习笔记 由于 JS 或者前端的场景限制,并不是 23 种设计模式都常用. 有的是没有使用场景,有的模式使用场景非常少,所以只是列举 7 个常见的模式 本文的 ...
- C++基础 学习笔记之一:源代码的格式化
C++基础 学习笔记之一:源代码的格式化 1. 源代码中的标记与空白 C++中的语句是以分号表示语句的结束.在C++中空格和回车以及制表符均为相同作用,即三者通常可以互相替代. 例如可以将一个简单的m ...
随机推荐
- Appium移动自动化测试-----(六)2.AppiumDesktop录制脚本生成极简脚本
AppiumDesktop启动页面: 启动AppiumDesktop以后点击该页面右上角的Start New Session按钮,就会启动一个新的会话窗口(如下图),在这个窗口我们需要配置一些Desi ...
- mysql大小写敏感配置
mysql大小写敏感配置show global variables like '%lower_case%'; show global variables like '%lower_case%'; &l ...
- qt linux下自动检测U盘热插拔
如果用U盘来更新软件,需要先删除当前的可执行文件,但是如果删除之后,复制失败的话会导致后续没有文件可以运行了.一个方法是将新的可执行文件放到另一个目录中,当copy成功后修改linux的启动文件,然后 ...
- HTTP_HOST , SERVER_NAME 区别
当端口是80的时候,他们的内容是一样的. 但是当端口不是80的时候,就不一样了. # HTTP_HOST = SERVER_NAME:SERVER_PORT /** * 获取当前的host */ pu ...
- DateTimeFormatter 的操作与使用 -- 通俗易懂
在上一章我们讲解了LocalDate.LocalTime.LocalDateTime.Instant的操作与使用,下面讲解它们之间是如何进行格式化 DateTimeFormatter这个类它只提供了时 ...
- [转帖]时间序列数据库 (TSDB)
时间序列数据库 (TSDB) https://www.jianshu.com/p/31afb8492eff 0.3392019.01.28 10:51:33字数 5598阅读 4030 背景 2017 ...
- PAT(B) 1094 谷歌的招聘(Java)
题目链接:1094 谷歌的招聘 (20 point(s)) 题目描述 2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘.内容超级简单,就是一个以 .com ...
- Nginx学习笔记(五):高级数据结构
目录 动态数组 单向链表 双端队列 红黑树 缓冲区 数据块链 键值对 动态数组 ngx_array_t 表示一块连续的内存,其中存放着数组元素,概念上和原始数组很接近 // 定义在 core/ng ...
- 织梦安全防护:禁止uploads、data、templets执行脚本
下面介绍下如何针对uploads.data.templets做PHP脚本限制:对uploads.data.templets 三个目录做执行php脚本限制,就算被上传了木马文件到这些文件夹,也是无法运行 ...
- RMAN备份,catalog注册rman带库备份信息
客户需求:测试恢复的过程中,控制文件是全备时期的,recover database无法恢复到指定日期,控制文件中缺失后续新的归档备份信息. 方法:1.控制文件rman注册后续带库中的归档备份: 2.使 ...