Bootstrap

python如何导入requests模块_python之requests模块

requests模块是一个用于访问网络的模块,其实类似的模块还有很多,不在一一在这里解释。这么多的相似的模块为什么都说只有这个好用呢,因为他人性化。如果你学过urllib之类的模块的话,比如urllib,对比一下就很清楚了。

1、requests模块的安装

requests模块的安装非常简单,使用pip install requests命令即可安装,我是在python的Terminal中直接安装的,大家也可以在cmd命令窗口中进行安装。

2003069-20200609224509378-100799567.png

2、requests模块的导入

导入requests模块时,直接使用import requests 命令进行导入即可,导入后就可以使用啦。

2003069-20200609224844268-1683744306.png

3、requests模块的使用

在上面的requests导入中,已经举了一个最简单的requests使用的例子,在实际的接口自动化测试中,我们往往需要传递一些参数,并获取响应的返回结果,下面我们将更详细的讲解requests的使用。

1)requests模块的简单使用

requests提供了如下几种HTTP请求方式:GET、POST、HEAD、OPTIONS、PUT、PATCH、DELETE,我们举几个比较简单的例子,示范代码如下:

2003069-20200609231328101-2000076367.png

2)requests模块发送请求时传入参数

上面我们介绍了requests中常用的几种请求方式,由于在工作中我们比较常用的是post和get方式进行请求,这里我们只会为大家讲解post和get两种请求方式,其他的内容如果有需要请大家自行补充。

get请求方式传入参数

相信了解过http的小伙伴们都知道,get请求方式的参数一般都是写在url之后,以问号与域名进行分隔,多个参数之间使用&符号进行拼接连接,下面我们为大家举一个简单的例子来进行说明:

2003069-20200627203312469-920906522.png

post请求方式传入参数

在前面的学习中我们已经了解到post请求多用于提交数据,提交的数据中可能会包含如密码、身份证号、验证码等私密信息,这些信息如果直接拼接在url中是不安全的,那么post请求是怎样传递参数的呢,post请求传递参数的方式有很多种,这里我们只介绍最常用的三种:

-- application/x-www-form-urlencoded,form表单默认的数据格式,提交的数据按照 key1=val1&key2=val2 的方式进行编码,key 和 val 都进行了 URL 转码。大部分服务端语言都对这种方式有很好的支持。比如下面的http请求格式:

2003069-20200627204408280-1486654176.png

-- application/json,现在越来越多的人把它作为请求头,用来告诉服务端消息主体是序列化后的 JSON 字符串。服务端语言也有很多函数去解析JSON,使用JSON可以支持更加复杂的结构化数据。比如下面的http请求格式:

2003069-20200627204520070-374273559.png

-- multipart/form-data,对用于在表单中上传文件时,也可以上传普通数据,只需要让form的enctype等于multipart/form-data就可以了。比如下面的http请求格式:

2003069-20200627204909147-1485324878.png

下面我们来详细了解一下使用requests来传递这三种类型的参数:

-- 以form表单形式发送post请求,具体代码实现如下所示:

2003069-20200627214415880-473532261.png

-- 以json格式发送post请求,具体代码实现如下所示:

2003069-20200627214250319-1833280845.png

-- 以multipart形式发送post请求,具体代码实现如下所示:

2003069-20200627222220452-2078816218.png

4、封装一个自己的requests模块

在自动化测试的过程中,我们会对多个接口进行测试,而目前我接触到的几乎所有接口都是返回的json格式的数据,所以封装了一个模块,返回json格式的数据,方便在后面进行调用,现在我把代码粘在下面,有兴趣的小伙伴们可以参考:

2003069-20200627223734795-1748893381.png

;