码迷,mamicode.com
首页 > 编程语言 > 详细

python request中的content和text的区别

时间:2018-11-06 11:09:47      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:默认   color   import   spl   encoding   hid   进制   enc   display   

一直不清楚requestes的content和text方法的区别,只知道content返回的是二进制数据,而text返回的是文本数据

 

先看看content的源码:

技术分享图片

注释可知content返回的是bytes型也就是二进制的数据

在看看text的源码:

技术分享图片

意思是requests.text是根据网页的响应来猜测编码,如果服务器不指定的话,默认编码是"ISO-8859-1"所以这是为什么有些时候用 response.text 返回的是乱码的原因。

可以用response.encoding看一下他猜测的编码是啥。然后用response.encoding = ‘utf-8‘来设置编码

实例如下:

技术分享图片
1 import requests
2 response=requests.get(http://www.qq.com)
3 response.encoding
4 >>GB2312
View Code

技术分享图片

技术分享图片
1 >>> response.encoding="UTF-8"
2 >>> response.encoding
3 UTF-8
View Code

 

总结:

content用来返回二进制数据,适用于保存二进制数据,例如图像,文件等
text适用于显示文本数据,编码根据服务器的响应来显示,也可以自己设置

 

python request中的content和text的区别

标签:默认   color   import   spl   encoding   hid   进制   enc   display   

原文地址:https://www.cnblogs.com/ganiner/p/9913062.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!