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
#请求url
url = "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_code
print("响应状态码:", res.status_code)
# 获取响应消息 res.content
print("响应消息:", res.content)
# 获取请求头 res.request.headers
print("请求头:", res.request.headers)
# 获取响应头 res.headers
print("响应头:", res.headers)
# 获取响应数据 res.text
print("响应数据:", res.text)
#获取cookie res.cookies
print("cookie:", res.cookies)
# res.json()
print("json:", res.json())
执行结果:
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
在我的QQ技术交流群里(技术交流和资源共享,广告进来腿给你打断)
可以自助拿走,群号953306497(备注“csdn111”)群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。
以上是关于Python接口自动化-requests模块之get请求的主要内容,如果未能解决你的问题,请参考以下文章
Python接口自动化之浅析requests模块post请求
Python接口自动化之浅析requests模块post请求