requests库简介----------【详细图解】

1.requests库作用

requests用来发送http请求以及接收http响应的python第三方库,主要用于接口自动化测试

2.requests库的常用方法

①requests.get()        url接口地址,param传参

②requests.post()       url接口地址,data传参,json也适用于传参

                data和json传参的区别?主要通过请求头Content-Type来区分

                Content-Type的作用就是服务器要求传入的报文(参数)的内容的类型

                请求四要素:请求方式,请求路径,请求头,请求正文

                四种传参方式的类型:
                <1>form-data                                        文件上传

                <2>x-www-from-urllencoded                表单提交

                <3>raw

                        text

                        javascript

                        json

                        html

                        xml

                <4>binary                                              二进制

                data和json传参以及Content-Type的关系如下:

                <1>data传参:报文是dict类型的,那么默认Content-Type:application/x-www-from-                                        urlencoded

                      data传参:报文是str类型,那么默认Content-Type:text/plain

                <2>json传参:报文可以是dict类型,那么默认Content-Type:application/json

                如何确定是那种类型???可以通过抓包工具

   

③requests.put()         

④requests.delete()

⑤requests.request()   可以发送任何类型的请求 

                不论是get/post/put/delete,最终调用的都是requests.request()方法

                method.
                url.
                params=None.
                data=None.
                json=None
                headers=None.
                cookies=None
                files=None.
 

3.requests模块返回的response对象

response.json()                       获得返回的字典格式的数据

response.text()                        获得返回的字符串格式的数据

response.headers()                响应头

response.content()                获得返回的bytes字节类型的数据

response.status_code()         状态码

response.reason()                返回状态信息

response.cookies()

reasponse.request.xxx        返回请求的数据,eg:请求头,请求参数;

4.json.loads()和json.dumps() 

json.loads()    把json字符串转化成dict格式

json.dumps()  把dict格式转化成json格式

5. 请求必须带请求头的接口,以及需要cookies鉴权和session鉴权的接口

<input type="hidden" name="csrf token" value="e7202bf558a7eb34"/>

90%以上的基于web的接口都有cookie鉴权

如果四要素都存在,但是接口的返回值依然出错,那么我们就要考虑是否是cookies鉴权的问题

如何去判断呢?

里面有值就说明有鉴权

有cookie鉴权怎么去解决呢?

①使用cookie关联

② 使用session关联

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值