zoukankan      html  css  js  c++  java
  • requests基础(二)获取响应内容

    响应包括响应行、响应头、响应正文,这些返回的响应信息都可以通过Request模块获取。这些获取到的响应内容也是接口测试执行得到的实际结果。

    获取响信息

    #requests获取响应信息
    import requests
    
    response=requests.get('https://www.taobao.com/',stream=True)
    
    #获取响应行
    print(response.status_code)#响应状态码
    print(response.reason)#响应信息
    
    # 响应头
    print(response.headers.get('Content-Type'))#返回的是字典类型,可以继续使用get获取指定的值
    
    #获取其他相应信息
    print(response.url)#获取请求地址
    print(response.cookies)#获取cookies
    print(response.encoding)#获取响应的编码格式

    响应正文

    依据不同格式的响应正文情况,requests模块有四种不同的处理方式

    
    # 方式一:普通响应内容,使用response.encoding改变编码,防止乱码出现
    response=requests.get('https://www.taobao.com/')
    response.encoding='utf-8'
    print(response.text)
    
    #方式二:返回二进制响应内容
    response=requests.get('https://www.taobao.com/')
    print(response.content.decode('utf-8'))
    
    #方式三:json响应内容 json()方法会返回一个json对象
    get_param_data={
        "grant_type":"client_credential",
        "appid":"wx93fc8716b3795e90",
        "secret":"1ff879affa4d6c7cddc27b2e99406990"
    }
    response=requests.get('https://api.weixin.qq.com/cgi-bin/token',get_param_data)
    print(response.json()['access_token'])
    
    #方式四:原始响应内容 请求地址后加 stream=True  一般不使用这个
    response=requests.get('https://www.taobao.com/',stream=True)
    print(response.raw.read(1000))
    
    #扩展
    #response.content下载图片 from PIL import Image from io import BytesIO url='https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png' response=requests.get(url) img=Image.open(BytesIO(response.content)) img.save('test.png')
  • 相关阅读:
    白帽子 攻防
    自定义WCF的配置文件
    .net快速创建PDF文档 by c#
    如何在面试中发现优秀程序员
    kafka-java客户端连接
    xshell 登陆堡垒机实现自动跳转
    良好的编程习惯
    Mycat-介绍
    scala-传名函数和传值函数
    springboot-31-springboot静态注入
  • 原文地址:https://www.cnblogs.com/lvhuayan/p/14901441.html
Copyright © 2011-2022 走看看