python+request 常用基础学习笔记
2024-08-24 06:30:56
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、
最新文章
- 火币网api的nodejs实现
- HTML中属性ID和属性NAME有何区别?
- react 年-月-日 时:分:秒
- Liferay7 BPM门户开发之33: Portlet之间通信的3种方式(session、IPC Render Parameter、IPC Event、Cookies)
- 《菊与刀》--[美]鲁思&#183;本尼迪克特(Ruth Benedict)
- Spring切入点表达式常用写法
- hadoop-cdh with snappy
- ASP.ENT Core Linux 下 为 donet创建守护进程(转载)
- MySQL慢查询(二) - pt-query-digest详解慢查询日志
- .NET页面301跳转处理
- ORA-07445: :一个意料之外的问题发生了 核心转储 [ldxsnf()+625] [SIGSEGV
- Mysql C语言API编程入门讲解
- 第2章 熟悉Eclipse开发工具---- System.out.println(";sum=";+(a+b));
- 【HighCharts系列教程】一、认识Highcharts
- Android源码编译jar包BUILD_JAVA_LIBRARY 与BUILD_STATIC_JAVA_LIBRARY的区别(一)
- for’ loop initial declarations are only allowed in C99 mode
- 利用Tkinter和matplotlib两种方式画饼状图
- Nginx动静分离实现
- javaEE学习路线与目标
- 『OpenCV3』滤波器边缘检测