本篇旨在对get和post请求做一个总结

目录

1、get请求

2、post请求

1、get请求

get请求一般形式相同,仅带url即可发送请求

对于https协议的请求,加一个特殊处理即可(verify=True)

对于一些网站请求的特殊性,需要添加headers信息,这时候加入headers参数即可

最终形式如:

requests.get(url,headers=head,verify=True)

另,get请求中url中的参数也可以参数化传递,形式如下:

par={key:"value"

}

requests.get(url,headers=head,params=par,verify=True)

2、post请求

因post请求一般带有body,根据body的形式不同,大致可划分为4类

  • application/x-www-form-urlencoded
  • application/json
  • text/xml
  • multipart/form-data

他们的body形式分别为:

  • application/x-www-form-urlencoded

这种body只要传入key、value即可

data1={“key”:“value”}

requests.post(url,data=data1)

  • application/json

这种body只要传入key、value即可,但是request里面的参数使用json来传入

data2={“key”:“value”}

requests.post(url,json=data2)

  • text/xml

这种body只要传入key、value即可,body写法是,每一个换行需要加一个/,每一行用单引号括起来

body = '<?xml version="1.0" encoding = "UTF-8"?>' \

'<COM>'

r = requests.post(url, data=body)

要是遇到编码问题报错,就对body部分encode下再传入:

r = requests.post(url, data=body.encode("utf-8"))

  • multipart/form-data

第一种:文件上传,见文件上传篇

第二种,非文件上传,这时候需要在headers中指定参数类型为application/x-www-form-urlencoded,然后按照application/x-www-form-urlencoded传参的格式进行传入

接口自动化之get/post请求的更多相关文章

  1. python接口自动化26-发xml格式post请求《转载》

    python接口自动化26-发xml格式post请求 https://cloud.tencent.com/developer/article/1164987

  2. python接口自动化1-发送get请求

    前言 requests模块,也就是老污龟,为啥叫它老污龟呢,因为这个官网上的logo就是这只污龟,接下来就是学习它了. 一.环境安装 1.用pip安装requests模块 >>pip in ...

  3. python接口自动化25-发xml格式post请求

    前言 post请求相对于get请求多一个body部分,body部分常见的数据类型有以下四种(注意是常见的,并不是只有4种) application/x-www-form-urlencoded appl ...

  4. python+pytest接口自动化(5)-发送post请求

    简介 在HTTP协议中,与get请求把请求参数直接放在url中不同,post请求的请求数据需通过消息主体(request body)中传递. 且协议中并没有规定post请求的请求数据必须使用什么样的编 ...

  5. python接口自动化1-发送get请求 前言

    前言 requests模块,也就是老污龟,为啥叫它老污龟呢,因为这个官网上的logo就是这只污龟,接下来就是学习它了. 一.环境安装 1.用pip安装requests模块 >>pip in ...

  6. python接口自动化1-发送get请求【转载】

    本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/python%E6%8E%A5%E5%8F%A3%E8%87%AA%E5%8A%A8%E ...

  7. python接口自动化2-发送post请求

    发送post的请求参考例子很简单,实际遇到的情况却是很复杂的,首先第一个post请求肯定是登录了,但登录是最难处理的.登录问题解决了,后面都简单了. 一.查看官方文档 1.学习一个新的模块,其实不用去 ...

  8. python接口自动化2-发送post请求详解(二)

    前言 发送post的请求参考例子很简单,实际遇到的情况却是很复杂的,首先第一个post请求肯定是登录了,但登录是最难处理的.登录问题解决了,后面都简单了. 一.查看官方文档 1.学习一个新的模块,其实 ...

  9. python入门以及接口自动化实践

    一.Python入门必备基础语法# 标识符:python中我们自己命名的都是标识符# 项目名 包名 模块名# 变量名 函数名 类名# 1:字母 下划线 数字组成 命名的时候不能以数字开头# 2:见名知 ...

随机推荐

  1. 使用ajax发送文件的三种方式及预览图片的方法,上传按钮美化

    后端代码 def upload(request): if request.method == "GET": return render(request,'upload.html') ...

  2. mysql,oracle,sql server数据库默认的端口号,端口号可以为负数吗?以及常用协议所对应的缺省端口号

    mysql,oracle,sql server数据库默认的端口号? mysql:3306 Oracle:1521 sql server:1433 端口号可以为负吗? 不可以,端口号都有范围的,0~65 ...

  3. SQL Server 批量 删除表索引

    当旧的数据库中的数据几乎很少使用到的时候,索引又占用着较大的磁盘空间,数据又不能删除,又想节省磁盘空间. 这个时候可以将所有表的索引进行删除了(先创建索引备份脚本,以备需要还原),可以批量一起删除. ...

  4. 机器学习分类算法之K近邻(K-Nearest Neighbor)

    一.概念 KNN主要用来解决分类问题,是监督分类算法,它通过判断最近K个点的类别来决定自身类别,所以K值对结果影响很大,虽然它实现比较简单,但在目标数据集比例分配不平衡时,会造成结果的不准确.而且KN ...

  5. Comet OJ - Contest #3 B -棋盘 (思维+分类讨论)

    题目描述 小猫有一个 2\times N2×N 的棋盘,每一个格子放着一个黑棋子或白棋子. 小熊觉得小猫的棋盘不够好看,想要把棋盘上的一部分白棋子替换成黑棋子,使得所有黑棋子都能够在仅允许上下左右四个 ...

  6. 64bit机器编译32bit汇编

    sudo apt-get install gcc-multilib sudo apt-get install g++-multilib gcc -m32  -S a.c -o a.s gcc -m64 ...

  7. java集合类图详解

  8. C#基础知识之依赖注入

    目录 1 IGame游戏公司的故事 1.1 讨论会 1.2 实习生小李的实现方法 1.3 架构师的建议 1.4 小李的小结 2 探究依赖注入 2.1 故事的启迪 2.2 正式定义依赖注入 3 依赖注入 ...

  9. pdf幻灯片:圆锥曲线中的“三定”问题探究(一)

    预留的广告位! 下载该pdf文件,然后在adobe reader 的"视图"中使用"全屏模式"播放该幻灯片 #include <iostream> ...

  10. element隐藏组件滚动条scrollbar使用

    可使用 组件 <el-scrollbar></el-scrollbar> 设置 组件的样式 为 高度100% <el-scrollbar style="heig ...