当你使用 requests 发送HTTPS请求时 requests.get(url, parmas=parmas, headers=header, cookies=cookie) 出现了以下错误 HTTPSConnectionPool(host='www.imooc.com', port=443): Max retries exceeded with url: /api3/getbanneradvertver2 (Caused by SSLError(SSLError(1, '[SSL: CER…
HTTPS: get: url = 'https://www.juhe.cn/docs/api/id/39' r = requests.get(url)                       #发送get请求 print(r.status_code)                        #打印状态码 print(r.headers)                            #打印返回的报头(头部) print(r.text)                     …
前言 一个http请求包括三个部分,为别为请求行,请求报头,消息主体,类似以下这样: 请求行 请求报头 消息主体 HTTP协议规定post提交的数据必须放在消息主体中,但是协议并没有规定必须使用什么编码方式. 服务端通过是根据请求头中的Content-Type字段来获知请求中的消息主体是用何种方式进行编码,再对消息主体进行解析. 具体的编码方式包括: application/x-www-form-urlencoded  最常见post提交数据的方式,以form表单形式提交数据. applicat…
一.环境安装 1.用pip安装requests模块 >>pip install requests 二.get请求 1.导入requests后,用get方法就能直接访问url地址,如:http://www.cnblogs.com/humiao-0626/ 2.这里的r也就是response,请求后的返回值,可以调用response里的status_code方法查看状态码 3.状态码200只能说明这个接口访问的服务器地址是对的,并不能说明功能OK,一般要查看响应的内容,r.text是返回文本信息…
掌握了前面几节的的内容,就可以做一些简单的http协议接口的请求发送了,但是这些还不够.HTTP协议是一个无状态的应用层协议,也就是说前后两次请求是没有任何关系的,那如果我们测试的接口之前有相互依赖关系怎么办呢(比如我要在博客园发文章,是需要先登录的),这时我们就要用到cookie和session技术来保持客户端与服务器端连接的状态,这也就是本节要介绍的内容: 一.Cookie: 1.获取cookie: # -*- coding:utf-8 -*- #获取cookie import reques…
前言 如果需要发送文件到服务器,比如上传图片.视频等,就需要发送二进制数据. 一般上传文件使用的都是 Content-Type: multipart/form-data; 数据类型,可以发送文件,也可以发送相关的消息体数据. POST一个多部分编码(Multipart-Encoded)的文件 使用 requests 上传文件的基本步骤 构造文件数据,通过 open 函数以二进制方式打开文件 构造相关数据 发送请求,将文件数据以  files  参数传入,其他消息体数据通过  data .json…
前言 之前讲了文件上传,当然就有文件下载啦 文件下载操作步骤 极其简单,将二进制格式的响应内容存进本地文件中,根据需要下载的文件的格式来写文件名即可 down_url = 'https://www.imooc.com/mobile/appdown' res = requests.post(down_url).content with open("F:/imooc.apk", "wb") as f: f.write(res)…
引言 在上一篇<基于Python接口自动化测试框架(初级篇)附源码>讲过了接口自动化测试框架的搭建,最核心的模块功能就是测试数据库初始化,再来看看之前的框架结构: 可以看出testcase下有很多测试用例,并且每个测试用例都写了请求地址,请求参数,请求头等相关数据,还有一些断言的数据.如果接口很多的话,这样每个case写都要写,导致后期工作量大,维护起来不方便. 针对上述情况,引入python一个非常好用的第三方库ddt,其作用就是数据驱动,将数据与代码分离,可以把所有的接口相关的测试用例数据…
本人对post理解不深,前段时间遇到一个需要用c#代码发送post请求上传文件的业务,于是参考了几篇帖子,加上自身实践写出了如下代码.写的比较low 望各位大大指正^_^. 业务需求: 对方给了一个接口,让传四个参数分别为"modelId.fileContent.updateTime.encrypt" 其中modelId.updateTime.encrypt 都是普通的字符串类型.fileContent则是二进制文件 我实在是不了解post的相关知识,平时只是普通的用法,没有深层看过相…
python接口自动化测试七:获取登录的Cookies,并关联到下一个请求   获取登录的cookies:loginCookies = r.cookies 把获取到的cookies传入请求:cookies=loginCookies 此方法需每一次都调用登录方法,并且每一次发送请求都需要传Cookies,不建议使用…