python中requests小技巧

yipeiwu_com7年前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和ffmpeg 批量将其他图片转换为.yuv格式的方法

由于跑编码的需要,所以需要制作一个.yuv格式的图片数据集,但是手头只有.jpg格式的,故记录下转换过程。其他图片格式也可以,代码里修改一下就行。 ①安装ffmpeg 官网(各种版本):...

浅谈python3发送post请求参数为空的情况

post请求的时候如果不带参数,其实作用就跟get请求一样。我们在做接口测试的时候,发现开发就全部使用的post,get的作用就被这样的post空参数请求给替代了。 在Python代码请...

python MySQLdb使用教程详解

python MySQLdb使用教程详解

本文主要内容python MySQLdb数据库批量插入insert,更新update的: 1.python MySQLdb的使用,写了一个基类让其他的sqldb继承这样比较方便,数据库的...

让你的Python代码实现类型提示功能

Python是一种动态类型语言,这意味着我们在编写代码的时候更为自由,但是与此同时IDE无法向静态类型语言那样分析代码,及时给我们相应的提示。为了解决这个问题,Python 3.6 新增...

python pygame模块编写飞机大战

本文实例为大家分享了python pygame模块编写飞机大战的具体代码,供大家参考,具体内容如下 该程序没有使用精灵组,而是用列表存储对象来替代精灵组的动画效果。用矩形对象的重叠来判断...