基于Python中request请求得到的response的属性问题
2021-08-03 15:26:27
浏览数 (3228)
在学习python爬虫的时候我们会涉及到python中的request请求返回的response响应。这个response响应带有一些response属性,可以为我们页面分析提供一定的帮助,接下来我们就来了解一下response中有哪些response属性吧。
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/
以上为就是response属性的全部介绍了,希望能给大家一个参考,也希望大家多多支持W3Cschool。