分享

接口测试 | 22 requests基础入门

 开源优测 2021-12-09

概述

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

#-*- 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内容。

开源优测

分享软件测试开源技术、经验、方案的首发平台

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多