不为人知的python request小技巧

不为人知的python request小技巧_第1张图片

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


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


0?wx_fmt=png


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


0?wx_fmt=png


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


不为人知的python request小技巧_第2张图片


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


0?wx_fmt=png


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


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


0?wx_fmt=png



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


0?wx_fmt=png


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


0?wx_fmt=png


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


不为人知的python request小技巧_第3张图片


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

pip install grequests


不为人知的python request小技巧_第4张图片


8:发送自定义cookies
我们使用Session实例来保持请求之间的cookies,但是有些特殊情况,需要使用自定义的cookies
我们可以这样


0?wx_fmt=png



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


不为人知的python request小技巧_第5张图片


详细使用可以查看API_DOC


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


0?wx_fmt=png


11:设置请求超时


不为人知的python request小技巧_第6张图片


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

原文链接:http://www.magedu.com/71427.html


你可能感兴趣的:(不为人知的python request小技巧)