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实现简单多线程任务队列

最近我在用梯度下降算法绘制神经网络的数据时,遇到了一些算法性能的问题。梯度下降算法的代码如下(伪代码): def gradient_descent(): # the gradie...

python中requests使用代理proxies方法介绍

学习网络爬虫难免遇到使用代理的情况,下面介绍一下如何使用requests设置代理: 如果需要使用代理,你可以通过为任意请求方法提供 proxies 参数来配置单个请求: impor...

python NumPy ndarray二维数组 按照行列求平均实例

我就废话不多说了,直接上代码吧! c = np.array([[1, 2, 3, 4], [4, 5, 6, 7], [7, 8, 9, 10]]) print(c.mean(axi...

详解Python Socket网络编程

Socket 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的,例如我们每天浏...

wxPython的安装与使用教程

wxPython的安装与使用教程

一、wxPython介绍     1.wxPython是Python语言的一套优秀的GUI图形库。wxPython可以很方便的创建完整的、功能键全的GUI用...