Python接口自动化-requests模块之get请求

Posted 软件测试自动化测试

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python接口自动化-requests模块之get请求相关的知识,希望对你有一定的参考价值。

一、requests模块说明

介绍

Requests是Python语言的第三方的库,专门用于发送HTTP请求。在Python语言中,虽然提供了urllib2和urllib的库,但是相比较而言,Requests仍然是实现接口测试最好的选择,因为它是用起来更加简便。

特点

1.Requests支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和POST数据自动编码。

2.在python内置模块的基础上进行了高度的封装,从而使得python进行网络请求时,变得人性化,使用Requests可以轻而易举的完成浏览器可有的任何操作。

3.Requests会自动实现持久连接keep-alive,现代,国际化,友好。

二、安装并导入模块

安装requests

  • Pycharm在线安装:

File-Settings-Project Interpreter

 

  • pip在线安装 :

cmd-> pip install requests

 

  • 国内源:

pip install requests -i 

https://pypi.tuna.tsinghua.edu.cn/simple/

导入requests

import requests

三、requests模块发送get请求

基本介绍

语法格式:requests.get(url, params=None, **kwargs)

如:requests.get(url=url, headers=headers, params=params)

  • url:请求url地址

  • headers:请求头

  • params:参数

简单使用

  •  获取响应状态码: res.status_code

  •  获取响应消息: res.content

  •  获取请求头: res.request.headers

  •  获取响应头: res.headers

  •  获取响应数据 res.text

 响应结果一般有三种格式:html、json、text;

  • 获取cookie res.cookies

 cookie是一种类字典的数据格式,若想打印字典的值,可以根据key;

  •  res.json():如果返回结果是json格式,可以把响应结果利用json()来进行解析;

示例:

# !/usr/bin/python3# -*- coding:utf-8 -*-# @Time:2020/1/26  07:00# @微信公众号:ITester软件测试小栈# @Author:coco# @Python交流群:604469740# @Email:3593721069@qq.com# @File:test.py# @Software:PyCharm#请求urlurl = "http://httpbin.org/get"#请求头headers= { "Accept": "*/*", "Accept-Encoding": "gzip, deflate", "User-Agent": "python-requests/2.9.1"}#查询字符串params = {'name': 'coco', 'age': '18'}res= requests.get(url, headers=headers, data=params)
#获取响应状态码 res.status_codeprint("响应状态码:", res.status_code)
# 获取响应消息 res.contentprint("响应消息:", res.content)
# 获取请求头 res.request.headersprint("请求头:", res.request.headers)
# 获取响应头 res.headersprint("响应头:", res.headers)
# 获取响应数据 res.textprint("响应数据:", res.text)
#获取cookie res.cookiesprint("cookie:", res.cookies)
# res.json()print("json:", res.json())

执行结果:

 感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

 

⑤ Python学习路线图(告别不入流的学习)

在我的QQ技术交流群里(技术交流和资源共享,广告进来腿给你打断)

可以自助拿走,群号953306497(备注“csdn111”)群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。

 

以上是关于Python接口自动化-requests模块之get请求的主要内容,如果未能解决你的问题,请参考以下文章

Python接口自动化之浅析requests模块get请求

Python接口自动化之浅析requests模块get请求

Python接口自动化之浅析requests模块post请求

Python接口自动化之浅析requests模块post请求

Python接口测试之对MySQL/unittest框架/Requests 的操作

python之requests模块学习