requests库中HTTP响应参数解读

requests库,是一个python三方库,是基于urlib3编写.
同时,requests库也是当前python发送HTTP请求的主流库!无论是自动化框架,还是爬虫!以及接口请求!都会使用到的三方库
首先,requests库核心就是请求,所以我们以GET请求为例
GET请求

# encoding: utf-8
"""
@author:辉辉
@email: 372148872@qq.com
@Wechat: 不要静音
@time: 2020/12/25 13:58
"""
import requests

url = 'http://www.baidu.com'
resp = requests.get(url)
print(resp)

GET形式的请求方法,是将数据以querystring方式,放置于url之中,发送给服务器,这种请求的优点在于,请求速度快,服务器响应快! 缺点也很明显,发送数据量小,数据暴漏在url当中,如果查询数据sql不标准,存在sql注入的风险,所以在编写sql时,尽量不要使用格式化拼接,避免产生sql漏洞
我们以GET请求为例子,来解释所有的response响应涵数

# print(resp.status_code)  #返回code码
# print(resp.headers)    # 返回请求头部信息
# print(resp.url)         # 返回请求url
# print(resp.request)     # 返回请求方法
# print(resp.content)       # 返回byte格式响应
# print(resp.text)            #返回响应文本
# print(resp.cookies)     #返回cookies
# print(resp.encoding)  # 通常用于响应体的编码格式
# print(resp.apparent_encoding)  # 返回的是ascii编码
# print(resp.elapsed)  # 返回响应时间
# print(resp.history)   #返回所有请求的响应以列表形式返回
# print(resp.is_permanent_redirect)  # 判断是否为永久重定向
# print(resp.is_redirect) # 判断是否为临时重定向
# print(resp.iter_content())  
"""遍历响应的数据
如果将参数stream=True,那么将避免内容立即读入内存,并且作为返回,可以进行编码设置,
另一个默认值chunk_size的参数类型,必须为int或者None,
如果decode_unicode设置为True,
则该参数将自动把响应进行当前可用的编码方式进行编码
"""
# print(resp.iter_lines())  # 遍历响应数据,每次遍历一行,其余同上
# print(resp.links)  #返回一个字典,请求头里的url
# print(resp.next)  # 为重定向链中的下一个请求返回一个preparerequest(准备请求,如果有的话)
# print(resp.ok)  # 检查服务器返回状态码,如果小于400则返回true否则返回false
# print(resp.raise_for_status())  # 判断响应,如果返回的状态码大于400则抛出异常
# print(resp.raw)    # 返回的是以Urlib发起的请求返回对象,通常返回的是HTTP响应对象
# print(resp.close())#  关闭返回的响应对象
# print(resp.reason)  # 响应HTTP状态的文本原因,例如:“未找到”或“好。 如果打印使用,则会打印无法处理的实体或错误

以上,则是Response响应对象包含的所有响应方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值