响应处理
res是请求返回的响应对象(变量名随意)。res.text会自动将二进制格式的响应数据,使用默认编码转为文本(字符串)格式。
res响应对象包含各种响应的信息,常用的如下。
res.content:二进制响应数据
res.text:将二进制响应数据按默认编码转为文本(字符串格式)
res.json():将JSON格式响应文本(res.text)按转为字典(!!!非JSON格式响应文本,使用此方法会报JSONDecoderError)
res.status_code:状态码
res.reason:状态码说明
res.headers:响应头
res.cookies:响应Cookies(响应Cookies中有时候不能包含所有响应头的Set-Cookies内容,可以通过解析响应头获取)
res.encoding:当前解码格式,可以通过修改req.encoding来解决一部分乱码问题
res.apparent_encoding:明显编码,使用chardet库对响应数据分析出的编码格式
乱码处理
当res.encoding解码格式和res.apparent_encoding明显编码格式不一致时,便可能出现乱码,如请求百度首页,打印res.text会发现有乱码,重新设置res.encoding为明显编码的格式,再次打印res.text便可以修复乱码。示例如下。
import