当前位置 博文首页 > 基于Python中request请求得到的response的属性问题

    基于Python中request请求得到的response的属性问题

    作者:精神抖擞王大鹏 时间:2021-06-04 17:45

    Python中request请求得到的response,即通过request得到的数据:

    import requests
    response = requests.get(https://www.jd.com/)

    response 的属性

    1、返回状态码

    response.status_code

    http请求的返回状态,2XX 表示连接成功,3XX 表示跳转 ,4XX 客户端错误 , 500 服务器错误

    2、返回http响应的文本内容

    response.text

    http响应内容的字符串(str)形式,请求url对应的页面内容

    response=requests.get("https://www.jd.com/")
    print(response.text)

    如果打印的过程中出现乱码:

    则可以使用encoding来修改编码格式:

    response.encoding="utf-8"
    print(response.text)

    3、返回http响应的二进制数据

    response =requests.get("https://www.jd.com/")
    # print(response.content)     #打印出的是二进制形式
    print(response.content.decode("utf-8"))

    总结:

    response的text方法和response的content方法进行对比:

    response.text返回的是Unicode型数据,response.content返回的是bytes型,也就是二进制类型的数据;

    取文本用.text的方法,取图片用.content的方法;

    4、从HTTP header中猜测的响应内容编码方式

    response.encoding

    5、从内容分析出的响应内容的编码方式(备选编码方式)

    response.apparent_encoding

    6、http响应内容的头部内容

    response.headers

    补充:python 爬虫 requests模块(response常用属性)

    response常用属性

    content获取的response对象中的二进制(byte)类型的页面数据

    response.content

    返回响应状态码

    response.status_code

    200

    返回响应头信息

    response.headers

    获取请求url

    response.url

    https://www.sogou.com/

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持站长博客。

    js