Python requests模块安装及使用教程图解


Posted in Python onJune 30, 2020

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

1、requests模块的安装

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

Python requests模块安装及使用教程图解

2、requests模块的导入

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

Python requests模块安装及使用教程图解

3、requests模块的使用

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

1)requests模块的简单使用

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

Python requests模块安装及使用教程图解

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

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

get请求方式传入参数

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

Python requests模块安装及使用教程图解

post请求方式传入参数

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

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

Python requests模块安装及使用教程图解

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

Python requests模块安装及使用教程图解

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

Python requests模块安装及使用教程图解

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

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

Python requests模块安装及使用教程图解

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

Python requests模块安装及使用教程图解

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

Python requests模块安装及使用教程图解

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

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

Python requests模块安装及使用教程图解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python正则表达式判断字符串是否是全部小写示例
Dec 25 Python
Python中的特殊语法:filter、map、reduce、lambda介绍
Apr 14 Python
Python字符串格式化
Jun 15 Python
用python记录运行pid,并在需要时kill掉它们的实例
Jan 16 Python
pandas数据预处理之dataframe的groupby操作方法
Apr 13 Python
pycham查看程序执行的时间方法
Nov 29 Python
python 对多个csv文件分别进行处理的方法
Jan 07 Python
Python面向对象程序设计示例小结
Jan 30 Python
浅谈keras的深度模型训练过程及结果记录方式
Jan 24 Python
基于Python实现2种反转链表方法代码实例
Jul 06 Python
Scrapy项目实战之爬取某社区用户详情
Sep 17 Python
详解Python中如何将数据存储为json格式的文件
Nov 18 Python
在Tensorflow中实现leakyRelu操作详解(高效)
Jun 30 #Python
TensorFlow-gpu和opencv安装详细教程
Jun 30 #Python
tensorflow 2.1.0 安装与实战教程(CASIA FACE v5)
Jun 30 #Python
python 最简单的实现适配器设计模式的示例
Jun 30 #Python
Tensorflow--取tensorf指定列的操作方式
Jun 30 #Python
解决TensorFlow程序无限制占用GPU的方法
Jun 30 #Python
tensorflow 大于某个值为1,小于为0的实例
Jun 30 #Python
You might like
PHP在字符断点处截断文字的实现代码
2011/04/21 PHP
解析php5配置使用pdo
2013/07/03 PHP
php实现excel中rank函数功能的方法
2015/01/20 PHP
PHP date函数常用时间处理方法
2015/05/11 PHP
Thinkphp事务操作实例(推荐)
2017/04/01 PHP
Laravel+Intervention实现上传图片功能示例
2019/07/09 PHP
精解window.setTimeout()&window.setInterval()使用方式与参数传递问题!
2007/11/23 Javascript
jquery的Theme和Theme Switcher使用小结
2010/09/08 Javascript
JS实现商品倒计时实现代码
2013/05/03 Javascript
js取消单选按钮选中示例代码
2013/11/14 Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
2016/05/31 Javascript
基于JS实现无缝滚动思路及代码分享
2016/06/07 Javascript
浅谈js数组和splice的用法
2016/12/04 Javascript
详解jQuery同步Ajax带来的UI线程阻塞问题及解决办法
2017/08/09 jQuery
详解在vue-cli项目中使用mockjs(请求数据删除数据)
2017/10/23 Javascript
深入浅析vue组件间事件传递
2017/12/29 Javascript
为react组件库添加typescript类型提示的方法
2020/06/15 Javascript
Pythont特殊语法filter,map,reduce,apply使用方法
2016/02/27 Python
Python基于列表list实现的CRUD操作功能示例
2018/01/05 Python
Python实现PS滤镜的旋转模糊功能示例
2018/01/20 Python
python实现批量解析邮件并下载附件
2018/06/19 Python
python使用socket 先读取长度,在读取报文内容示例
2019/09/26 Python
Python高级property属性用法实例分析
2019/11/19 Python
Pyinstaller 打包发布经验总结
2020/06/02 Python
基于python 取余问题(%)详解
2020/06/03 Python
捷克街头、运动和滑板一站式商店:BoardStar.cz
2019/10/06 全球购物
六十大寿答谢词
2014/01/12 职场文书
2014年超市员工工作总结
2014/11/18 职场文书
财务会计岗位职责
2015/02/03 职场文书
2015年大班保育员工作总结
2015/05/18 职场文书
手术室消毒隔离制度
2015/08/05 职场文书
学习习近平主席讲话心得体会
2016/01/20 职场文书
2016党员干部政治学习心得体会
2016/01/23 职场文书
实例讲解Python中sys.argv[]的用法
2021/06/03 Python
中国十大神话动漫电影排行榜 哪吒登顶 白蛇缘起排第七
2022/03/21 国漫
高通2023 年将发布高性能PC处理器
2022/04/29 数码科技