首页 > 编程语言 >Python - 接口自动化(Requests)

Python - 接口自动化(Requests)

时间:2023-09-12 11:37:35浏览次数:50  
标签:header Python text 接口 url json -- Requests requests

1、requests简介

如果想用python做接口测试,我们首先有不得不了解和学习的模块。

它就是python的第三方模块:Requests。

虽然Python内置有urllib模块用于访问网络资源。但是,它用起来比较麻烦,而且,缺少很多实用的高级功能。

所以呢更好的方案是使用requests。它也是目前应用最广泛、最方便、功能最强大的一个Python第三方库,主要用于处理URL资源

ruquests的中文官网:http://cn.python-requests.org/zh_CN/latest/index.html

requests的英文官网:http://www.python-requests.org/en/master/

 

2、requests安装

使用pip安装

pip install requests

如果下载比较慢,配置使用国内镜像进行下载 https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

 

3、requests-发送get请求

import requests

# 请求的url,以小望之家的以id查企业接口为例
url = "https://endpoint.xiaowangtech.com/xw-moonlit/moonlit/enterprise/search-detail?enterpriseId=410417"

# header信息
header = {
    "Access-Token": "6693dfed-bbbf-4163-9e59-e21a19ec7195",
    "Accept": "application/json, text/plain, */*",
}

# 使用requests发送get请求
r = requests.get(url=url, headers=header)

# 以text格式打印出参
print(r.text)

# 以json格式打印出参
print(r.json())

 

4、requests-发送post请求

import requests

# 请求的url,以小望之家的获取企业列表为例
url = "https://endpoint.xiaowangtech.com/xw-moonlit/moonlit/enterprise/list"

# header信息
header = {
    "Access-Token": "6693dfed-bbbf-4163-9e59-e21a19ec7195",
    "Accept": "application/json, text/plain, */*",
}
# 请求入参
json = {
    "enterpriseName": "",
    "current": 1,
    "size": 10
}
# 使用requests发送post请求
r = requests.post(url=url, headers=header, json=json)

# 以text格式打印出参
print(r.text)

# 以json格式打印出参
print(r.json())

 

5、response的其他应用

-- r.status_code #响应状态码

-- r.content #字节方式的响应体,会自动为你解码 gzip 和deflate 压缩

-- r.headers #以字典对象存储服务器响应头,但是这个字典比较特殊,字典键不区分大小写,若键不存在则返回 None

-- r.json() #Requests 中内置的 JSON 解码器,requests的方便之处还在于,对于特定类型的响应,例如JSON,可以直接获取

-- r.url # 获取 url

-- r.encoding # 编码格式,requests自动检测编码

-- r.cookies # 获取 cookie

-- r.raw #返回原始响应体-- r.text #字符串方式的响应体,会自动根据响应头部的字符编码进行解码

-- r.raise_for_status() #失败请求(非 200 响应)抛出异常

 

标签:header,Python,text,接口,url,json,--,Requests,requests
From: https://www.cnblogs.com/zhuchunlin/p/17695714.html

相关文章

  • Python数据类型之字符串(String)
    Python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。Python中常用的数据类型有6种,分别是:数字(Number)、字符串(String)、列表(List)、元组(Tuple)、字典(Dictionary)、集合(Set)。字符串(String)Python中的字符串用单引号''或者双引号""括起......
  • python
    importrandomfromrandomimportchoiceops=('+','-','×','÷')ans=[]i=0whilei<42:op1=choice(ops)op2=choice(ops)n=random.randint(1,9)ifop1=='+'andop2=='+'......
  • Spring Boot 中调用外部接口的 3 种方式
    ......
  • python进阶 day09基本的文件处理
    基本的文件处理什么是文件?操作系统提供给用户的一个虚拟单位文件有什么用?存储数据找到文件路径path=r'D:\上海Python11期视频\python11期视频\day09\test.py'#鼠标右键点击文件,copypath复制路径双击打开f=open(path,'w')#r-->read只读;w-->只写,清......
  • Ajax 和 axios 调用接口的使用
     一、前提了解:服务器:负责存放和对外提供资源的电脑‘请求-处理-响应’客户端:在上网过程中,负责获取和消费资源的电脑URL:统一资源定位符,协议域名端口号资源的请求方式: 1.get:获取服务器资源 2.post:向服务器提交数据 3.其他:put修改、delete删除、fetch批量二、Ajax的......
  • python进阶 day09异常处理
    异常处理语法异常(错误都是SyntaxError)if#SyntaxError0=1#SyntaxErrortry:#尝试num=input('输入一个值')print(3)#代码自上而下,上面会运行1/int(num)#错误不影响其他的代码,报错马上终止try缩进里面的代码print(4)exceptZeroDivisionE......
  • 同时安装python2和python3的切换与配置
    windows环境下同时安装了python2和python3,通过命令行窗口运行python脚本:1、python调用py-2调用python2py-3调用python3python脚本需要在python2下运行,在脚本前加上,然后运行pyxxx.py#!python2python脚本需要在python3下运行,在脚本前加上,然后运行pyxxx.py#!python3......
  • 比Python快6.8万倍,新语言Mojo首次开放下载,LLVM之父打造
    比Python快6.8万倍,新语言Mojo首次开放下载,LLVM之父打造投递人 itwriter 发布于 2023-09-1023:10 评论(5) 有428人阅读 原文链接 [收藏] « »梦晨发自凹非寺量子位公众号QbitAI什么编程语言,敢号称是高性能版的“Python++”?新语言Mojo,来自LLVM......
  • python第一行
    python第一行一般python脚本的开通会写成#!/usr/bin/python这表示用/usr/bin目录下的这个python可执行文件来进行运行脚本当然如果你还安装了其他版本的python,可以将第一行指向python的可执行文件,比如#!/software/public/python/3.7.0/bin/python3.7or#!/software/public/......
  • Python - 网页自动化
    一、环境准备Selenium安装命令行安装pipinstallselenium浏览器驱动安装找到本地chrome的浏览器的版本查看谷歌浏览器的版本号下载相应版本的驱动器,chrome浏览器驱动下载地址:chromedriver.storage.googleapis.com/index.html下载完后,解压到本地的python的目......