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 smtplib发送带附件邮件小程序

最近经常需要出一些临时性的报表,于是就用python 的smtplib 和email 两模块写了个小程序,当数据处理完后通过邮箱把报表文件从服务器上发送出来! 程序名称:sendMail...

Queue 实现生产者消费者模型(实例讲解)

Python中,队列是线程间最常用的交换数据的形式。 Python Queue模块有三种队列及构造函数: 1、Python Queue模块的FIFO队列先进先出。 class Queue...

学习python之编写简单乘法口诀表实现代码

实现代码一、 #!/usr/bin/python x,y=9,9 lst=[(x,y,str(y)+'X'+str(x)+'='+str(x*y)) fo...

pymongo中group by的操作方法教程

前言 使用 pymongo 进行 group by 操作有两种基本方式,他们都是 mongodb 的原生命令,于 Collection 对象上调用。 def aggregate(se...

Python切图九宫格的实现方法

Python切图九宫格的实现方法

本文介绍了Python切图九宫格的实现方法,分享给大家,具体如下 # -*- coding: utf-8 -*- ''' 将一张图片填充为正方形后切为9张图 ''' from PI...