python中requests小技巧

yipeiwu_com6年前Python基础

关于  Python requests ,在使用中,总结了一些小技巧把,记录下。

1:保持请求之间的Cookies,我们可以这样做。

2:请求时,会加上headers,一般我们会写成这样

唯一不便的是之后的代码每次都需要这么写,代码显得臃肿,所以我们可以这样:

3:默认requests请求失败后不会重试,但是我们跑case时难免遇到一些网络或外部原因导致case失败,我们可以在Session实例上附加HTTPAdapaters 参数,增加失败重试次数。

这样,之后的请求,若失败,重试3次。

4:重定向

网络请求中可能会遇到重定向,我们需要一次处理一个请求,可以把重定向禁止。

5:post请求提交json格式数据时,一般先要把python对象转换成json对象。可能很多时候是这样写:

其实post有一个默认参数json,可以直接简写成:

6:写接口请求,debug时,会需要看下代码请求的详细信息,当然我们可以使用fiddler来查看,其实我们自己也可以在代码这样获取debug信息 *

7:使用grequests实现异步请求。

pip install grequests

8:发送自定义cookies

我们使用Session实例来保持请求之间的cookies,但是有些特殊情况,需要使用自定义的cookies

我们可以这样

9:需求确定前后端并行设计时,这时 测试 并没有办法调用接口,如何做接口测试呢?我们可以使用mock或者是httpretty

详细使用可以查看API_DOC

10:统计一个API请求花费的时间,我们可以使用如下方法

11:设置请求超时

关于 Python ,requests的小技巧,就是这些。

相关文章

python实现socket端口重定向示例

python实现socket端口重定向示例

可以很轻松的在端口12345开启共享,效果如下: 要实现我想要的功能,只需要将端口重定向就行了,代码如下: 复制代码 代码如下:#! /usr/bin/python''' &n...

详解Python当中的字符串和编码

详解Python当中的字符串和编码

字符编码 我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计...

django 信号调度机制详解

django 信号调度机制详解

前言 Django中提供了“信号调度”,用于在框架执行操作时解耦。通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者。 1、Django内置信号 Model si...

Python采用Django开发自己的博客系统

Python采用Django开发自己的博客系统

好久之前就想做一下自己的博客系统了,但是在网上查了查好像是需要会一些Node.js的相关知识,而且还要安装辣么多的库什么的,就不想碰了。但是我遇到了Django这么一款神器,没想到我的博...

在Python的Django框架中包装视图函数

我们最终的视图技巧利用了一个高级python技术。 假设你发现自己在各个不同视图里重复了大量代码,就像 这个例子: def my_view1(request): if not r...