TestDog-接口测试get实战

一、requests模块介绍

Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装,使用Requests可以轻而易举的完成浏览器可有的任何操作。

1、安装requests模块

pip3 install requests 推荐使用源安装这样会提高安装效率,这里用的豆瓣云 pip3 install requests -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

 

二、GET请求的使用

1、不带参数的get请求

发送请求一般分为:

  1. 1.请求参数 2. 请求方法3.返回结果

  2. 请求地址博客园:https://www.cnblogs.com/wen-cheng/

import requests def get_res(): url = 'https://home.cnblogs.com/u/wen-cheng' res = requests.get(url) # 获取code print('code:%d' % res.status_code) # 获取返回txt内容 print('res:%s' % res.text) if __name__ == '__main__': get_res()

 

2、再发一个带参数的get请求

  1. 请求地址:http://zzk.cnblogs.com/s/blogpost?Keywords=自动化测试平台TestDog-V1

  2. 请求参数:Keywords=自动化测试平台TestDog-V1,可以以字典的形式传参:{"Keywords": "自动化测试平台TestDog-V1"}

 

import requests def get_params_res(): params = { "Keywords": "自动化测试平台TestDog-V1" } url = 'https://zzk.cnblogs.com/s/blogpost' res = requests.get(url, params) print('code:%d' % res.status_code) print('res:%s' % res.text) if __name__ == '__main__': get_params_res()

 

3、发一个动态参数get请求

  1. 请求地址:http://zzk.cnblogs.com/s/blogpost?Keywords=?

  2. 请求参数:Keywords=?,可以以字典的形式传参:{"Keywords": ?}

import requests def get_kparams_res(): k = input('输入关键字: ').strip() params = { "Keywords": k } url = 'https://zzk.cnblogs.com/s/blogpost' res = requests.get(url, params) print('code:%d' % res.status_code) print('res:%s' % res.text) if __name__ == '__main__': get_kparams_res()

 

4、发一个带有headers和cookie的get请求

  1. 请求地址:http://zzk.cnblogs.com/s/blogpost?Keywords=自动化测试平台TestDog-V1

  2. 请求参数:Keywords=自动化测试平台TestDog-V1,可以以字典的形式传参:{"Keywords": "自动化测试平台TestDog-V1"}

  3. headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.122 Safari/537.36' }

  4. cookie=DetectCookieSupport=OK

import requests def getCookie(): """ 获取cookie :return: """ cook_url = 'https://zzk.cnblogs.com/s/blogpost?Keywords="自动化测试平台TestDog-V1"' response = requests.get(cook_url) cookie_value = '' for key, value in response.cookies.items(): cookie_value += key + '=' + value + ';' print(cookie_value) return cookie_value def get_headers_params_res(): params = { "Keywords": "自动化测试平台TestDog-V1" } headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.122 Safari/537.36' } url = "https://zzk.cnblogs.com/s/blogpost" cookie_value = getCookie() headers['Cookie'] = cookie_value res = requests.get(url, headers=headers, data=params) print('code:%d' % res.status_code) print('res:%s' % res.text) if __name__ == '__main__': get_headers_params_res()

 

三、本章小结

1、一个完成整的requests请求

def get_Summarize(): url = "https://xxx.xxx.com/" headers = { 'k': 'w' } params = { 'k': 'w' } requests.get(url, headers=headers, data=params)

 

2、requests方法总结:

print(dir(requests))

 

3、常用方法

  • requests.status_code #响应状态码

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

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

  • requests.json() #Requests中内置的JSON解码器

  • requests.url # 获取url

  • requests.encoding # 编码格式

  • requests.cookies # 获取cookie

  • requests.raw #返回原始响应体

  • requests.text #字符串方式的响应体,会自动根据响应头部的字符编码进行解码

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

 

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家的支持。

更多文章关注小编公众号:自动化测试 To share

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值