接口测试 —— Requests库介绍

1、Requests库

Requests库是用Python语言编写,基于urllib3模块,采用Apache2 Licensed开源协议的 HTTP 库。

虽然Python的标准库中urllib3模块已经包含了平常我们使用的大多数功能,但是它的 API使用起来让人感觉不太友好。而Requests库使用的是urllib3,因此继承了它的所有特性,所以Requests库比urllib3使用更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求。

Requests库支持HTTP 连接保持和连接池,支持使用cookie 保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的URL 和POST 数据自动编码。现代、国际化、人性化。

Requests库自称 “HTTP for Humans”(让HTTP服务于人类),说明使用更简洁方便。

Requests库是以 PEP 20 的箴言为中心开发的
  1. Beautiful is better than ugly.(美丽优于丑陋)
  2. Explicit is better than implicit.(直白优于含蓄)
  3. Simple is better than complex.(简单优于复杂)
  4. Complex is better than complicated.(复杂优于繁琐)
  5. Readability counts.(可读性很重要)

对于 Requests 所有的贡献都应牢记这些重要的准则。

简而言之:Requests库相当于Python中的“浏览器”,可以通过它进行网络请求、获取网页数据,功能强大而且特别好用。

说明PEP20

PEP20是编写python程序的指导准则,在python shell中输入import this就能看到是编写python程序的指导准则,在python shell中输入import this就能看到,内容如下:

TIM Peters的python之禅
The Zen of Python, by Tim Peters优美胜于丑陋。
Beautiful is better than ugly.明确胜于隐晦。
Explicit is better than implicit.简单胜于复杂。
Simple is better than complex.复杂胜于难懂。
Complex is better than complicated.扁平胜于嵌套。
Flat is better than nested.留白胜于紧凑。
Sparse is better than dense.可读性很重要。
Readability counts.特例也并不能特殊到可以违背这些原则。
Special cases aren't special enough to break the rules.
虽然实用性胜于纯粹性。
Although practicality beats purity.
错误不应被默默地忽略。
Errors should never pass silently.
除非你明确地忽视。
Unless explicitly silenced.
面对歧义,不要尝试去猜测。
In the face of ambiguity, refuse the temptation to guess.
应该有一种,最好是仅有一种,明显的处理方式。
There should be one-- and preferably only one --obvious way to do it.
一开始那种方式并非显而易见,除非你是python之父。
Although that way may not be obvious at first unless you're Dutch.做好过不做。
Now is better than never.不假思索就动手还不如不做。
Although never is often better than *right* now.如果实现很难解释,那就不是个好思路。
If the implementation is hard to explain, it's a bad idea.
如果实现易于解释,则可能是个好思路。
If the implementation is easy to explain, it may be a good idea.
命名空间是个绝妙的主意,我们要多多利用它。
Namespaces are one honking great idea -- let's do more of those!

2、Requests库文档

  • 官方文档:https://requests.readthedocs.io/en/master/
  • 中文文档:https://requests.readthedocs.io/zh_CN/latest/
  • GitHub开源地址:https://github.com/psf/requests

3、Requests库安装

安装Requests库前提条件,需要安装python环境,然后在cmd命令行中输入python -m pip install requests(推荐)或者pip install requests即可。

如下图:

​执行pip list查看Requests库是否安装成功,和所安装的版本(默认安装最高版本。)

C:Users\ailin-L>pip list 
Package     Version 
-------     --------
certifi     2020.12.5
chardet     4.0.0
idna        2.10
pip         19.2.3
requests    2.25.1
selenium    3.141.0
setuptools  41.2.0
ur11ib3     1.25.9

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/662892.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Vue3实战】TypeScript前端实战基础

【Vue3实战】TypeScript前端实战基础 前言一、TypeScript的由来二、什么是TypeScript?三、静态类型检查四、类型注解和类型推导五、可选参数和默认参数六、接口和类型别名接口接口的可选设置类型 七、类和继承接口的继承交叉类型模拟继承 八、泛型什么是泛型泛型接口泛型函数泛…

TS:使用记录

TS 使用记录(持续更新中) 1、window 中添加全局变量 1、window 中添加全局变量 在 TS 中,如果直接在 window 中添加全局变量,例如:window.pages {}。会报错: Property pages does not exist on type Win…

Hgame题解(第一星期)

Hgame题解(第一星期) Web ezHTTP 打开靶机首先看到题目提示:请从vidar.club访问这个页面 根据http协议,需要创建一个Referer字段,其值设置为vidar.club(意思是从该网页跳转到靶机网页的)&…

嵌入式系统学习(一)

嵌入式现状(UP经历): 大厂的招聘要求: 技术栈总结: 产品拆解网站: 52audio 方案查询网站iotku,我爱方案网, 主要元器件类型:

【android】对于google-webrtc的性能中, memory leak

目录 zlmediakit->webrtcplay->app webrtcutil1/3 测试程序等 zlmediakit->webrtcplay->app 编译sdk 32 有时候会从开始新增5M,就稳定在一个值了 webrtcutil1/3 测试程序等 编译sdk 30

Oracle和Mysql数据库

数据库 Oracle 体系结构与基本概念体系结构基本概念表空间(users)和数据文件段、区、块Oracle数据库的基本元素 Oracle数据库启动和关闭Oracle数据库启动Oracle数据库关闭 Sqlplussqlplus 登录数据库管理系统使用sqlplus登录Oracle数据库远程登录解锁用户修改用户密码查看当前语…

逸学区块链【solidity】真随机数

参考Get a Random Number | Chainlink Documentation 但是很贵,价格 Gas Price:当前gas价格,根据网络状况而波动。Callback gas :返回您所请求的随机值时,回调请求消耗的gas 量。验证gas :量gas 用于验证…

Vue3学习记录(二)--- 组合式API之计算属性和侦听器

一、计算属性 1、简介 ​ 计算属性computed(),用于根据依赖的响应式变量的变化,进行自动的计算,并返回计算后的结果。当依赖的响应式变量发生变化时,computed()会自动进行重新计算,并返回最新的计算结果。如果依赖的…

【深度学习】P1 Deep Learning 简介

目录 什么是深度学习深度学习网络结构深度学习重要历史节点常见深度学习库 什么是深度学习 深度学习,deep learning,是机器学习的分支,是一种以人工神经网络为架构,对资料进行表征学习的算法。而深度学习中“深度”一词&#xff…

Map和Set讲解

🎥 个人主页:Dikz12📕格言:那些在暗处执拗生长的花,终有一日会馥郁传香欢迎大家👍点赞✍评论⭐收藏 目录 集合框架 模型 Set 常见方法和说明 Set总结 Map说明 Map常见方法和说明 Map 中HashMap的 …

Linux一些实用操作

学习笔记,记录以下课程中关于Linux的一些实用操作。黑马程序员新版Linux零基础快速入门到精通,全涵盖linux系统知识、常用软件环境部署、Shell脚本、云平台实践、大数据集群项目实战等_哔哩哔哩_bilibili 目录 1 各类小技巧(快捷键&#xff…

天翼数科实在智能,战略合作签约!Agent最大化赋能应用领域

近日,天翼数智科技(北京)有限公司(以下简称“天翼数科”)与杭州实在智能科技有限公司(以下简称“实在智能”)签署战略合作协议。 基于本次战略合作,天翼数科将与实在智能发挥各自的专业特长,整合…

SQL的函数类型

目录 一、聚合函数 二、数值型函数 三、字符串函数 四、日期函数 五、流程控制函数 一、聚合函数 定义:聚合函数是指对一组值进行运算,最终返回是单个值,也可以被称为组合函数。 COUNT() 统计目标行数量的函数 AVG() 求平均值 SU…

10:基于Servlet模拟用户登录功能的实现与解析-Java Web

目录 10.1 登录表单设计与前端交互10.2 创建Servlet处理登录请求10.3 用户服务模拟实现10.4 安全性与优化考量10.5 区别总结10.6 应用场景总结 在Web开发中,用户登录功能是几乎所有系统的基础模块。本篇博客将通过编写一个基于Java Servlet的用户登录模拟案例&#…

24美赛C思路分享

可以参考这篇文章通过数据分析理解网球一发的重要性 - 知乎 (zhihu.com)

C语言stderr、errno、strerror、perror

C语言stderr、errno、strerror、perror stderr 是标准错误输出,类型为 FILE* ; errno 宏是运行时最近一次的错误代码,正常运行时值为 0; strerror() 函数用于获取 errno 错误代码对应的错误信息字符串; perror() 函数…

在CentOS 7 中配置 YUM源

目录 YUM源的功能: YUM 源的安装过程 ps YUM工具 配置YUM仓库/YUM源 网络源:使用官方源 前提:联网 YUM源的功能: YUM(Yellowdog Updater Modified)是一个在Red Hat、CentOS、Fedora等基于RPM的Linux发…

Nat Med | 儿童急性淋巴细胞白血病基因组景观中的药物类型

今天给同学们分享一篇实验文章“Pharmacotypes across the genomic landscape of pediatric acute lymphoblastic leukemia and impact on treatment response,这篇文章发表在Nat Med期刊上,影响因子为82.9。 结果解读: 与ALL药物敏感性的临…

C++(17.5)——list模拟实现扩展

在上篇文章中,实现了的大部分功能以及部分迭代器。本片文章将对剩下的功能进行补充。 1. const迭代器: 对于上篇文章中实现的迭代器只能使用于非类型的对象。对于类型的遍历,则需要额外编写类型的迭代器。例如对于下面的场景: …

【持续更新】2024牛客寒假算法基础集训营1题解 | JorbanS

文章目录 [A - DFS搜索](https://ac.nowcoder.com/acm/contest/67741/A)[B - 关鸡](https://ac.nowcoder.com/acm/contest/67741/B)[C - 按闹分配](https://ac.nowcoder.com/acm/contest/67741/C)[E - 本题又主要考察了贪心](https://ac.nowcoder.com/acm/contest/67741/E)[F -…