深圳网站营销型建设,大门户wordpress主题下载,病历邮寄怎么进入公众号,厦门网站制作企业requests库是一个常用的用于http请求的模块#xff0c;它使用python语言编写#xff0c;在当下python系列的接口自动化中应用广泛#xff0c;本文将带领大家深入学习这个库
Python环境的安装就不在这里赘述了#xff0c;我们直接开干。 01、requests的安装
windows下执行… requests库是一个常用的用于http请求的模块它使用python语言编写在当下python系列的接口自动化中应用广泛本文将带领大家深入学习这个库
Python环境的安装就不在这里赘述了我们直接开干。 01、requests的安装
windows下执行如下命令
pipinstallrequests-ihttp://pypi.douban.com/simple/--trust-host pypi.douban.com
mac终端下执行如下命令
python3-mpipinstallrequests-ihttp://pypi.douban.com/simple/--trust-host pypi.douban.com 02、自动化requests模块的常用方法 2.1get请求实战
# !/usr/bin python3 # encoding: utf-8 -*- # author: 沙陌 微信Matongxue_2# Time:2021/3/25 9:54 # Copyright北京码同学网络科技有限公司import requests hosthttp://10.0.0.18:8080def get():get接口请求:return:url host/pinter/com/getSku #接口地址params{id:1}resp requests.get(url,paramsparams)status_coderesp.status_code #获取响应状态码print(响应状态码:{}.format(status_code))textresp.text #获取响应内容结果类型是字符串print(响应内容:{}.format(text))jsonresp.json() #获取响应内容结果是字典类型print(响应内容:{}.format(json))resp_headersresp.headers #获取响应headersprint(响应header:{}.format(resp_headers))if__name____main__:get()
结果如下
D:\Python\Python36\python.exe D:/pycharmprojects/first/requetsstudy/pinter.py响应状态码:200 响应内容:{code:0,message:success,data:{skuId:1,skuName:ptest-1,price:645,stock:709,brand:testfan}}classdict响应内容:{code:0,message:success,data:{skuId:1,skuName:ptest-1,price:645,stock:709,brand:testfan}}响应header:{Content-Type:application/json;charsetUTF-8,Transfer-Encoding:chunked,Date:Fri,12Mar202122:13:49GMT,Keep-Alive:timeout20,Connection:keep-alive}Process finished with exit code 0
上述代码中请求发起后得到一个响应对象变量resp那么resp对象的常用方法如下 2.2post请求实战
post请求的参数格式通常有多种我们依次学习
第一种表单形式的参数
pythonimportrequests hosthttp://10.0.0.18:8080defpost():post表单:return:urlhost/pinter/com/login#表单参数data{userName:沙陌,password:123456}resprequests.post(urlurl,datadata)status_coderesp.status_code#获取响应状态码print(响应状态码:{}.format(status_code))textresp.text#获取响应内容结果类型是字符串print(响应内容:{}.format(text))jsonresp.json()#获取响应内容结果是字典类型print(响应内容:{}.format(json))resp_headersresp.headers#获取响应headers print(响应header:{}.format(resp_headers))
第二种json格式参数
import requestshosthttp://10.0.0.18:8080def post_json():postjson:return:url host /pinter/com/register#header里定义参数类型headers{Content-Type:application/json}#json参数json{userName:沙陌,password:1234,gender:1,phoneNum:110,email:beihe163.com,address:Beijing}resprequests.post(urlurl,jsonjson)status_coderesp.status_code #获取响应状态码print(响应状态码:{}.format(status_code))textresp.text #获取响应内容结果类型是字符串print(响应内容:{}.format(text))jsonresp.json() #获取响应内容结果是字典类型print(响应内容:{}.format(json))resp_headersresp.headers #获取响应headersprint(响应header:{}.format(resp_headers))
2.3put接口实战
import requestshosthttp://10.0.0.18:8080def put():put 清酒:return:url host/pinter/com/phone #接口地址#参数json{brand:Huawei,color:yellow,memorySize:64G,cpuCore:8核,price:8848,desc:全新上市}resprequests.put(urlurl,jsonjson)status_coderesp.status_code #获取响应状态码print(响应状态码:{}.format(status_code))textresp.text #获取响应内容结果类型是字符串print(响应内容:{}.format(text))jsonresp.json() #获取响应内容结果是字典类型print(响应内容:{}.format(json))resp_headersresp.headers #获取响应headersprint(响应header:{}.format(resp_headers))
2.4delete请求 2.5request.session.request用法
可以自动管理cookie比如如下需要采用cookie认证的接口 结果如下
D:\Python\Python36\python.exeD:/pycharmprojects/first/requetsstudy/pinter.py 响应状态码:200 响应内容:{code:0,message:success,data:$22,378,198}Process finished with exit code 0
2.6token关联的接口如何做呢 对于需要token关联的接口来说需要从登录接口的返回值中提取token信息并传递给需要token的接口 结果如下
D:\Python\Python36\python.exeD:/pycharmprojects/first/requetsstudy/pinter1.py响应状态码:200 响应内容:{code:0,message:success,data:$74,780,457}Process finished with exit code 0
总结一下
requests库的请求方法里参数众多所以简单划分一下查询参数就用paramsparams
表单参数就用datadata
json参数就用jsonjson
请求头信息header就用headersheaders 绵薄之力【资源分享】
最后感谢每一个认真阅读我文章的人看着粉丝一路的上涨和关注礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走
下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码朋友们如果需要可以自行免费领取 【保证100%免费】 这些资料对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你凡事要趁早特别是技术行业一定要提升技术功底。希望对大家有所帮助……基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源免费分享~