首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
28 篇文章
1
一篇文章让你入门API测试
2
[接口测试 - 基础篇] 01 你应该了解的协议基础
3
[接口测试 - 基础篇] 02 你应该掌握的Python3接口测试内功
4
[接口测试 - 基础篇] 03 unittest测试框架了解多少才够?
5
[接口测试 - 基础篇] 04 无法绕过的json解析
6
[接口测试 - 基础篇] 05 好讨厌的xml解析
7
[接口测试 - 基础篇] 06 好吧也来解析下html
8
[接口测试 - 基础篇] 07 来来来,一起读写excel玩玩之一
9
[接口测试 - 基础篇] 08 封装个基本的excel解析类
10
[接口测试 - 基础篇] 09 其实吧,读写csv格式也是要掌握的
11
[接口测试 - 基础篇] 10 别啊,还有INI格式呢,别忘记我
12
[接口测试 - 基础篇] 11 掌握下python解析YAML格式也是需要的
13
[接口测试 - 基础篇] 12 还是要掌握python日志管理模块的
14
[接口测试 - 基础篇] 13 写在接口测试基础篇完结时
15
[接口测试 - http.client篇] 14 源码初探及其工作机制分析
16
[接口测试 - http.client篇] 15 常用API说明及基本的示例
17
[接口测试 - http.client篇] 16 基于http.client之POM实战一下
18
[接口测试 - http.client篇] 17 http.client之入门级接口测试框架
19
接口测试 | urllib篇 18 urllib介绍
20
接口测试 | urllib篇 19 urllib基本示例
21
[接口测试 -基础篇] 20 用flask写一个简单server用于接口测试
22
接口测试 | 21 基于flask弄个restful API服务出来
23
接口测试 | 22 requests基础入门
24
接口测试 23 requests基础入门二
25
接口测试 | 24 requests + unittest集成你的接口测试
26
接口测试 | 25 requests + pytest测试实例
27
接口测试 | 26 基础及简要验证清单
28
接口测试 | 27 HTTP接口详细验证清单

接口测试 | 22 requests基础入门

概述

从本文开始分享requests相关知识,及如何用requests进行接口测试。

requests号称:是唯一的一个非转基因的Python HTTP库,人类可以安全享用。

功能特性

下面我们看看requests的功能特色:

  • Keep-Alive & 连接池
  • 国际化域名和URL
  • 带持久化Cookie的会话
  • 浏览器式的SSL认证
  • 内容自动解码
  • basic/Digest认证
  • key/value Cookie管理
  • 自动解压
  • Unicode响应
  • HTTP/HTTPS代理支持
  • 文件分块上传
  • 流下载
  • 连接超时
  • 分块请求
  • 支持.netrc

看完上述特色,是不是发现掌握了requests库,在http/https处理方面几乎处于无敌状态了?

安装

先看下怎么安装requests, 执行以下命令:

pip install requests

安装好后如何导入requests模块呢?如下所示:

import requests

基本示例

下面我们看一个基本的示例,体验下requests的强大,直接上代码演示利用requests访问github的api,具体api说明请参见:

https://developer.github.com/v3

代码语言:javascript
复制
#-*- coding:utf-8 -*-

__author__ = "苦叶子"

# 导入模块
import requests

if __name__ == "__main__":
    print("开源优测 - requests基本示例")    

    # 发送HTTP GET请求,获取github API列表
    r = requests.get("https://api.github.com")    
    
    # 请求返回码
    status_code = r.status_code    

    # 完整的返回头
    headers = r.headers    
    
    # 请求返回头 content-type的值
    content_type = r.headers["content-type"]    
    
    # 返回内容编码类型
    code = r.encoding    
    
    # 返回内容文本
    text = r.text    

    # 若返回结果为json格式,我们可以获取其json格式内容
    json_data = r.json()    
    
    # 打印上述所有获取到的值
    print("状态码: ", status_code)
    print("返回头: ", headers)
    print("content-type: ", content_type)
    print("编码:", code)
    print("文本内容: ", text)
    print("json串内容: ", json_data)

将上述代码保存至requests_basic_demo.py中,执行下属命令运行:

python requests_basic_demo.py

运行结果如下图:

小结

本文演示了GET方法及如何获取响应状态码、响应头、编码、文本内容、json内容。

下一篇
举报
领券