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

作者:笔筒里的猫 时间:2022-08-10 15:29:45 

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模块安装及使用教程图解

来源:https://www.cnblogs.com/Cactus-xiaot/p/13081743.html

标签:Python,requests,模块
0
投稿

猜你喜欢

  • Python走楼梯问题解决方法示例

    2021-07-07 22:57:51
  • python scipy求解非线性方程的方法(fsolve/root)

    2022-01-06 15:46:00
  • 通过python检测字符串的字母

    2023-01-11 22:49:47
  • asp如何终止浏览器的 CAHCE 页面?

    2010-07-07 12:25:00
  • PHP字符编码问题之GB2312 VS UTF-8解决方法

    2024-04-29 13:57:28
  • 节日快乐! Python画一棵圣诞树送给你

    2022-06-11 07:53:09
  • 使用python实现回文数的四种方法小结

    2022-01-17 14:57:51
  • 在Python中append以及extend返回None的例子

    2021-05-12 10:33:34
  • MSSQL自动重建出现碎片的索引的方法分享

    2024-01-17 13:50:52
  • Django如何简单快速实现PUT、DELETE方法

    2021-04-14 17:53:07
  • PHP getallheaders无法获取自定义头(headers)的问题

    2024-04-30 08:47:30
  • php防止sql注入代码实例

    2023-08-15 21:17:21
  • MySQL主从复制的原理及配置方法(比较详细)

    2024-01-28 18:21:02
  • 基于PHP的登录和注册的功能的实现

    2024-04-30 08:48:04
  • 盘点十个超级好用的高级Python脚本

    2023-12-04 23:41:27
  • python添加模块搜索路径方法

    2023-11-20 09:29:45
  • Python学习笔记之字符串和字符串方法实例详解

    2021-07-13 19:13:16
  • Vue.js实现多条件筛选、搜索、排序及分页的表格功能

    2024-05-02 16:41:58
  • Python调用API接口实现人脸识别

    2022-09-10 22:42:20
  • pandas学习之df.fillna的具体使用

    2023-10-16 20:34:08
  • asp之家 网络编程 m.aspxhome.com