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中的格式化输出用法总结
Jul 28 Python
Python的地形三维可视化Matplotlib和gdal使用实例
Dec 09 Python
python 2.7.14安装图文教程
Apr 08 Python
Python实现爬虫从网络上下载文档的实例代码
Jun 13 Python
新手入门Python编程的8个实用建议
Jul 12 Python
Python 使用 docopt 解析json参数文件过程讲解
Aug 13 Python
Python使用百度api做人脸对比的方法
Aug 28 Python
在python中实现求输出1-3+5-7+9-......101的和
Apr 02 Python
解决Python spyder显示不全df列和行的问题
Apr 20 Python
python实现图片素描效果
Sep 26 Python
详解Django关于StreamingHttpResponse与FileResponse文件下载的最优方法
Jan 07 Python
Python中Qslider控件实操详解
Feb 20 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微信开发接入
2016/08/27 PHP
详解PHP原生DOM对象操作XML的方法
2016/10/17 PHP
PHP实现的迪科斯彻(Dijkstra)最短路径算法实例
2017/09/16 PHP
浅谈使用 Yii2 AssetBundle 中 $publishOptions 的正确姿势
2017/11/08 PHP
PHP中散列密码的安全性分析
2019/07/26 PHP
PHP页面静态化――纯静态与伪静态用法详解
2020/06/05 PHP
获取焦点时,利用js定时器设定时间执行动作
2010/04/02 Javascript
深入理解JavaScript系列(36):设计模式之中介者模式详解
2015/03/04 Javascript
测试IE浏览器对JavaScript的AngularJS的兼容性
2015/06/19 Javascript
ionic js 复选框 与普通的 HTML 复选框到底有没区别
2016/06/06 Javascript
AngularJS指令详解及示例代码
2016/08/16 Javascript
js鼠标跟随运动效果
2017/03/11 Javascript
ES6学习教程之对象的扩展详解
2017/05/02 Javascript
Vue实现购物车场景下的应用
2017/11/27 Javascript
Angular2开发环境搭建教程之VS Code
2017/12/15 Javascript
vue项目常用组件和框架结构介绍
2017/12/24 Javascript
基于vue实现可搜索下拉框定制组件
2020/03/26 Javascript
jQuery使用动画队列自定义动画操作示例
2018/06/16 jQuery
微信小程序数据分析之自定义分析的实现
2018/08/17 Javascript
Vue中跨域及打包部署到nginx跨域设置方法
2019/08/26 Javascript
python正则匹配抓取豆瓣电影链接和评论代码分享
2013/12/27 Python
10个易被忽视但应掌握的Python基本用法
2015/04/01 Python
Python的SQLalchemy模块连接与操作MySQL的基础示例
2016/07/11 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
python 提取key 为中文的json 串方法
2018/12/31 Python
Python类的继承用法示例
2019/01/31 Python
python使用requests模块实现爬取电影天堂最新电影信息
2019/04/03 Python
python使用yield压平嵌套字典的超简单方法
2019/11/02 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
2020/02/26 Python
filter使用python3代码进行迭代元素的实例详解
2020/12/03 Python
雅诗兰黛旗下专业男士保养领导品牌:Lab Series
2017/05/15 全球购物
Ryderwear美国官网:澳大利亚高端健身训练装备品牌
2018/04/24 全球购物
潘多拉意大利官方网上商城:网上选购PANDORA珠宝
2018/10/07 全球购物
在校生汽车维修实习自我鉴定
2013/09/19 职场文书
学前班教师的自我鉴定
2013/12/05 职场文书
献爱心大型公益活动策划方案
2014/09/15 职场文书