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

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

response 的属性

  1. 返回状态码
response.status_code
http请求的返回状态,2XX 表示连接成功,3XX 表示跳转 ,4XX 客户端错误 , 500 服务器错误
  1. 返回http响应的文本内容
response.text
http响应内容的字符串(str)形式,请求url对应的页面内容

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

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

Python中request请求得到的response的属性问题_数据


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

response.encoding="utf-8"
print(response.text)
  1. 返回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的方法;
  1. 从HTTP header中猜测的响应内容编码方式
response.encoding
  1. 从内容分析出的响应内容的编码方式(备选编码方式)
response.apparent_encoding
  1. http响应内容的头部内容
response.headers

我是精神抖擞王大鹏,不卑不亢,和蔼可亲~
计算机硕士,目前小米大数据开发。日常会分享总结一些自己面试实际问题的回答,欢迎一起讨论。
公众号:diting_dapeng