自动化测试复习巩固第一天,requests的用法
如何快速发送post请求
因为我用的python语言,所以大家需要在本地安装python语言和pycharm,如何安装请自行查找教程,这里不做过多赘述
这里需要提前下载安装好需要的第三方库requests,requests 是一个流行的 Python 库,用于发送 HTTP 请求。它提供了一种简单而优雅的方式来与 Web 服务进行交互,可以用于执行各种 HTTP 请求,如 GET、POST、PUT、DELETE 等,并处理服务器响应。
安装requests库
方式一:在本地的cmd环境下,使用pip install requests命令下载requests包,我这里已经下载了,大家自行下载

方式二:打开pycharm--setting--python Interpreter搜索requests下载,可以看到我已经下载了

requests用法
requests 包的使用方法非常简单和直观。
1.发送get请求
import requests
method = "get"
url = "http://api.example.com/data"
response = requests.request(method,url)
print(response.status_code)
print(response.json()) # 获取响应的 JSON 数据
2.发送post请求
import requests
method = "post"
url = "http://api.example.com/submit"
data = {"name": "John", "age": 25}
response = requests.request(method,url, data=data)
print(response.status_code)
print(response.text) # 获取响应的文本内容
3.发送带有请求头的请求
import requests
method = "get"
url = "http://api.example.com/data"
headers = {"User-Agent": "Mozilla/5.0"}
response = requests.request(method,url, headers=headers)
print(response.status_code)
print(response.json())
4.处理会话
import requests
session = requests.Session()
session.headers.update({"User-Agent": "Mozilla/5.0"})
response1 = session.get("http://api.example.com/login")
response2 = session.post("http://api.example.com/submit", data={"name": "John"})
5.处理认证和 Cookie
import requests
url = "http://api.example.com/data"
response = requests.get(url, auth=("username", "password"))
print(response.status_code)
print(response.json())
# 或者使用 Cookie
cookies = {"session_id": "12345"}
response = requests.get(url, cookies=cookies)
6.文件上传
import requests
url = "http://api.example.com/upload"
files = {"file": open("data.txt", "rb")}
response = requests.post(url, files=files)
print(response.status_code)
print(response.text)
这些只是 requests 库的一些基本用法,大家可以参考requests官方文档查看更多的功能和选项
使用request库发送http请求
进入pycharm创建项目,创建python文件
第一步导入requests库
import requests
第二步准备好测试数据
url = "http://192.168.3.xx/zentaopms/www/index.php?m=user&f=login"
method = "post"
data = {"account":"xxx",
"password":"*****"}
这里我准备的是自己搭建的禅道,IP和账号密码就脱敏了,大家自行准备网站进行测试
第三步发送http请求
re = requests.request(method,url,json=data)
这里闹了一个乌龙,我先写的是(url,method,json=data),结果报错了,看了requests用法才发现,如果单独使用url,method这样传参的话,得先把method放在第一个参数。如果想把url放第一个参数,可以使用url=url,method=method这样。这里把请求传给re变量是为了方便后面查看结果。
第四步查看请求结果
print("禅道登录状态码是:",re.status_code)
print("禅道登录响应头是:",re.headers)
print("禅道登录响应类型是:",type(re.text))
print("禅道登录响应数据是:",re.text)
第五步查看返回结果

自动化测试复习巩固第一天,requests的用法的更多相关文章
- 爬虫简介、requests 基础用法、urlretrieve()
1. 爬虫简介 2. requests 基础用法 3. urlretrieve() 1. 爬虫简介 爬虫的定义 网络爬虫(又被称为网页蜘蛛.网络机器人),是一种按照一定的规则,自动地抓取万维网信息的程 ...
- Python3.x:requests的用法
Python3.x:requests的用法 1,requests 比 urllib.request 容错能力更强: 2,通常用法: (1).认证.状态码.header.编码.json r = requ ...
- 爬虫—Requests高级用法
Requests高级用法 1.文件上传 我们知道requests可以模拟提交一些数据.假如有的网站需要上传文件,我们也可以用requests来实现. import requests files = { ...
- Python爬虫十六式 - 第三式:Requests的用法
Requests: 让 HTTP 服务人类 学习一时爽,一直学习一直爽 Hello,大家好,我是Connor,一个从无到有的技术小白.今天我们继续来说我们的 Python 爬虫,上一次我们说到了 ...
- Monkeyrunner自动化测试由浅入深(第一节)
(原版)Monkeyrunner自动化测试由浅入深(第一节) 博主原创,请勿转载 第一.相关软件和环境的配置 1.Android sdk下载和配置 2.java jdk下载和配置 第二.Monkeyr ...
- python requests 高级用法
高级用法 本篇文档涵盖了 Requests 的一些高级特性. 会话对象 会话对象让你能够跨请求保持某些参数.它也会在同一个 Session 实例发出的所有请求之间保持 cookie, 期间使用 url ...
- Python接口自动化测试框架: pytest+allure+jsonpath+requests+excel实现的接口自动化测试框架(学习成果)
废话 最近在自己学习接口自动化测试,这里也算是完成一个小的成果,欢迎大家交流指出不合适的地方,源码在文末 问题 整体代码结构优化未实现,导致最终测试时间变长,其他工具单接口测试只需要39ms,该框架中 ...
- 转:【Python3网络爬虫开发实战】 requests基本用法
1. 准备工作 在开始之前,请确保已经正确安装好了requests库.如果没有安装,可以参考1.2.1节安装. 2. 实例引入 urllib库中的urlopen()方法实际上是以GET方式请求网页,而 ...
- CSS3秘笈复习:第一章&第二章&第三章
第一章: 1.<cite>标签不仅可以将网页设置为斜体,还能给标题做上标记,使它便于被搜索引擎搜索到. 第二章: 1.import指令链接样式表: CSS本身有一种添加外部样式的方法:@i ...
- <自动化测试方案_1>第一章、为什么要做自动化测试?(Why)
第一章.为什么要做自动化测试?(Why) 测试的产品分为:桌面程序(C/S).web应用(B/S) 我们的产品是B/S (一)迭代中省去人力测试非新增功能: 在项目中由于测试时间的限制,测试中只能实现 ...
随机推荐
- [计蒜客20191103C] 分组
小 C 是 \(n\) 个学生的老师,他现在要把所有学生分成两组,他会按照以下这些要求: 1.如果两个同学是好朋友那么他们就不会被分到同一组 2.小 C 想最小化两组人数差值 现在请你写一个程序来帮助 ...
- 2023"安洵杯"第六届网络安全挑战赛-Misc WP
dacongのsecret 题目 我的解答: 题目给出一张png图片和一个加密压缩包,压缩包里面还存在另一张jpg图片 看名字就知道是盲水印.由于压缩包里的图片提不出来,因此是单图盲水印,我们使用工具 ...
- keycloak~从login-status-iframe页面总结如何跨域传值~续
keycloak~从login-status-iframe相关文章,可阅读我的这两篇keycloak~从login-status-iframe页面总结如何跨域传值,keycloak~对接login-s ...
- 【csharp】抽象类与接口有哪些不同?什么时候应该使用抽象类?
抽象类与接口有哪些不同? 抽象类和接口是在面向对象编程中两个不同的概念,它们有一些重要的区别.以下是抽象类和接口的主要不同点: 抽象类(Abstract Class): 成员类型: 抽象类可以包含抽象 ...
- MySQL 基础(三)事务与 MVCC
事务 事务是一组原子性的 SQL 操作,或者被称为一个独立的工作单元,如果数据库引擎能够成功地对数据库应用该组的全部 SQL 语句,那么就会全部执行,否则全部不执行. 事务的特性 在关系数据库管理系统 ...
- django token 认证 简单记录
class User(AbstractUser): username = models.CharField( max_length=20, unique=True, primary_key=True, ...
- win10 安装 AutoCAD
有些人在 win10 系统下 安装 AutoCAD 会有些小问题,不要担心,根据下面这些图片就可以解决你的问题 答案很简单,就是安装.NET Framework3.5,这里提供一种安装方法供大家参考: ...
- spring-mvc 系列:拦截器和异常处理器(HandlerInterceptor、HandlerExceptionResolver)
目录 一.拦截器的配置 二.拦截器的三个抽象方法 三.多个拦截器的执行顺序 四.基于配置的异常处理器 五.基于注解的异常处理器 一.拦截器的配置 SpringMVC中的拦截器用于拦截控制器方法的执行 ...
- Serverless架构的前世今生
一.Serverless简介 云计算的不断发展,涌现出很多改变传统IT架构和运维方式的新技术,而以虚拟机.容器.微服务为代表的技术更是在各个层面不断提升云服务的技术能力,它们将应用和环境中很多通用能力 ...
- GaussDB技术解读系列:高级压缩之OLTP表压缩
本文分享自华为云社区<DTCC 2023专家解读 | GaussDB技术解读系列:高级压缩之OLTP表压缩>,作者:GaussDB 数据库 . 8月16日,第14届中国数据库技术大会(DT ...