一、安装 requests和jsonpath 模块

安装命令:pip install requests

pip install jsonpath

二、requests 处理常见的接口请求参数类型

1、表单类型的参数:

1)请求参数类型:content-type: application/x-www-form-urlencoded*

2)requests 发送请求,传递表单参数,应该使用 data 去传递

import requests

from jsonpath import jsonpath

url = 'https://***.******.com/v3.3/uaa/login'

params = {

"username": "131********",

"password": "************"

}

headers = {

"x-app-id": "******"

}

res = requests.request('post', url, data=params, headers=headers).json()

# 使用jsonpath获取登录接口返回的token值,后边请求接口的headers中需要用到

token = jsonpath(res, '$..token')[0]

2、JSON 类型的参数:

1)请求类型为 Content-Type:Application/json

2)requests 发送请求,传递 JSON 参数,就应该使用 JSON 去传递

import requests

from jsonpath import jsonpath

url = 'https://***.******/getExamList'

params = {

"pageNum": 1,

"pageSize": 20

}

headers = {

"x-app-id": "******",

# 依赖登录接口返回的token值

"x-auth-token": token

}

res = requests.request('post', url, json=params, headers=headers)

print(res.json())

3、查询字符串参数:

1)常用于 get 请求(其他的请求方法用的少)

2)参数会直接拼接在 url 地址后面

3)requests 发送请求,传递查询字符串参数,要使用 params

url = 'https://***.******/findAll'

params = {

"pageNum": 1,

"pageSize": 9999

}

headers = {

"x-app-id": "******",

# 依赖登录接口返回的token值

"x-auth-token": token

}

res = requests.request('get', url, params=params, headers=headers)

print(res.json())

4、文件上传

1)请求参数类型:content-type:application/form-data(postman 请求参数也选择这个)

2)文件参数要使用 files 进行传递

3)文件参数的组装:两种形式****

{"参数名":("文件名",open 以 rb 模式打开文件,"文件类型")}

{("参数名",("文件名",open 以 rb 模式打开文件,"文件类型"))}

import requests

url = 'http://127.0.0.1:5000/upload'

# 请求参数

params = {

"nickname":'奔奔',

}

file = {

'pic':('test.gif',open('test.gif','rb'),'image/gif')

}

response = requests.post(url=url, data=params, files = file)

print(response.json())

标签:http,python,接口,headers,token,params,url,参数,requests

来源: https://www.cnblogs.com/benben-wu/p/13919760.html

python http接口_python处理http接口请求相关推荐

  1. python多线程请求接口_python多线程实现http请求

    #!/usr/bin python2.6 # -*- coding: utf-8 -*- import threading, datetime, time, httplib # 初始最大并发数 STA ...

  2. python 接口测试多线程_python多线程测试接口性能,就是这么简单

    除了使用性能测试工具进行性能测试,我们也可以直接用python多线程进行性能测试. 下面,使用这几个模块,对一个查询接口做性能测试: requests:发送http请求 json:返回的字符串转换成j ...

  3. python如何调用java写的接口_Python 调用翻译接口

    最近在读 gartner 的一些文档,然后,,,全英文 然后看的我头昏脑涨....重点是效率低下...那我就想打开了我的有道,准备看到不认得的就鼠标悬浮一会,然后等反馈.. 可是,,这也太难了吧... ...

  4. python通达信接口_python通达信接口-通达信 量化交易。

    Python 里没有接口,如何写设计模式? 我曾经实现过web测试的自动化库,主要说一下模拟浏览器部分:对于ie,mshtml组件. 好自动化而且收益可观+ Python是一种动态类型语言,拥有duc ...

  5. python调用android的接口_Python写Android接口一步到位

    最近想自己写 Android 的接口,之前学过一点 Python 基础,打算用 Flask 框架实现,请看下边 一.准备 PyCharm 编译工具 Mysql 数据库 Flask 框架和 SQLAlc ...

  6. python登录注册接口_Python实现登录接口

    要求: 输入用户名和密码 认证成功,显示欢迎信息 用户名3次输入错误后,退出程序 密码3次输入错误后,锁定用户名 Readme: UserList.txt 是存放用户名和密码的文件,格式为:usern ...

  7. python压测接口_python的一个接口压测脚本

    1 importrequests2 import queue #Queue模块中提供了同步的.线程安全的队列类,包括 3 #FIFO(先入先出)队列Queue,LIFO(后入先出)队列 4 #Lifo ...

  8. python调用c 接口_python调用C接口

    5.结构体定义 我们用 fields = [('name1',type1),('name2',type2)]来表示结构体的成员 字节对齐 C结构体中经常会出现按照指定的字节进行对齐结构体,用pack来 ...

  9. python smtplib模块_python实现邮件接口——smtplib模块

    1. 思路 使用脚本发送邮件的思路其实和客户端发送邮件一样,过程都是: 登录 -> 写邮件 -> 发送 只不过通过脚本发送时我们需要考虑到整个过程的方方面面.以下为思路导图: 2. Pyt ...

最新文章

  1. ajax跨域异常,ajax跨域问题
  2. python语言程序设计基础网课-宜昌2020年_高校邦_Python程序设计基础【实境编程】...
  3. 成功解决pywintypes.error: (2, 'LoadLibraryEx', '系统找不到指定的文件。')
  4. oracle high watermark,Elasticsearch high disk watermark 问题
  5. iOS之深入解析类加载的底层原理:类如何加载到内存中
  6. 重拾python Day 1
  7. 开源纯C#工控网关+组态软件(四)上下位机通讯原理
  8. Vue第一部分(3):事件绑定与标签属性赋值
  9. bzoj1037 [ZJOI2008]生日聚会Party 插数dp
  10. linux紧急救援模式,如何在 Ubuntu 18.04 中启动到救援模式或紧急模式
  11. 罗永浩直播首秀将开卖小米10,网友:一时不知该说谁牛X!
  12. 云原生技术的挑战是什么?
  13. POSTMAN接口测试流程
  14. 解决MFC“由于应用程序配置不正确,应用程序未能启动……”错误提示的问题
  15. 虚拟机的安装及使用介绍
  16. [HDU5956]The Elder
  17. 三星Galaxy Note 10.1刷机教程
  18. mysql语句批量更新数据库_sql 更新批量数据库语句
  19. python中“_“用法
  20. [kuangbin带你飞]专题1

热门文章

  1. Linux的ntp服务起不来,CentOS7/Red Hat7 NTP服务无法开机自启动
  2. linux c 屏幕触摸_交互式拼接屏应用互动触摸屏实现大屏幕拼接墙
  3. c++ 工作路径介绍及获取
  4. 在Substance Designer中创建砖墙视频教程
  5. 京医通如何删除临时卡,解绑
  6. Docker将容器制作成镜像并提交到远程仓库
  7. .NET Core 常用加密和Hash工具NETCore.Encrypt
  8. -bash:syntax error near unexpected token '('
  9. 第一讲SQL命令的DDL和DML操作讲解
  10. 正确理解ThreadLocal