对python requests的content和text方法的区别详解


Posted in Python onOctober 11, 2018

问题:

一直在想requests的content和text属性的区别,从print 结果来看是没有任何区别的

看下源码:

@property
  def text(self):
    """Content of the response, in unicode.

    If Response.encoding is None, encoding will be guessed using
    ``chardet``.

    The encoding of the response content is determined based solely on HTTP
    headers, following RFC 2616 to the letter. If you can take advantage of
    non-HTTP knowledge to make a better guess at the encoding, you should
    set ``r.encoding`` appropriately before accessing this property.
    """

  #content的完整代码就不贴了。
  @property
  def content(self):
    """Content of the response, in bytes."""

结论是:

resp.text返回的是Unicode型的数据。

resp.content返回的是bytes型也就是二进制的数据。

也就是说,如果你想取文本,可以通过r.text。

如果想取图片,文件,则可以通过r.content。

(resp.json()返回的是json格式数据)

举个栗子

# 例如下载并保存一张图片

import requests

jpg_url = 'http://img2.niutuku.com/1312/0804/0804-niutuku.com-27840.jpg'

content = requests.get(jpg_url).content

with open('demo.jpg', 'wb') as fp:
  fp.write(content)

以上这篇对python requests的content和text方法的区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python操作SQLite简明教程
Jul 10 Python
python创建和删除目录的方法
Apr 29 Python
Python中int()函数的用法浅析
Oct 17 Python
python 批量修改/替换数据的实例
Jul 25 Python
Python实现滑动平均(Moving Average)的例子
Aug 24 Python
python实现截取屏幕保存文件,删除N天前截图的例子
Aug 27 Python
Python如何使用字符打印照片
Jan 03 Python
使用PyQt的QLabel组件实现选定目标框功能的方法示例
May 19 Python
浅谈keras 模型用于预测时的注意事项
Jun 27 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 Python
Python字节单位转换(将字节转换为K M G T)
Mar 02 Python
Python实现位图分割的效果
Nov 20 Python
使用pip发布Python程序的方法步骤
Oct 11 #Python
对python Tkinter Text的用法详解
Oct 11 #Python
python数据批量写入ScrolledText的优化方法
Oct 11 #Python
攻击者是如何将PHP Phar包伪装成图像以绕过文件类型检测的(推荐)
Oct 11 #Python
python中join()方法介绍
Oct 11 #Python
Python中staticmethod和classmethod的作用与区别
Oct 11 #Python
对Python 窗体(tkinter)文本编辑器(Text)详解
Oct 11 #Python
You might like
剖析 PHP 中的输出缓冲
2006/12/21 PHP
『PHP』PHP截断函数mb_substr()使用介绍
2013/04/22 PHP
destoon实现底部添加你是第几位访问者的方法
2014/07/15 PHP
PDO::errorInfo讲解
2019/01/28 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
2019/03/30 PHP
js类 from qq
2006/11/13 Javascript
JavaScript 新手24条实用建议[TUTS+]
2009/06/21 Javascript
JavaScript 模式之工厂模式(Factory)应用介绍
2012/11/15 Javascript
关于JQuery($.load)事件的用法和分析
2013/04/09 Javascript
深入理解Javascript中的循环优化
2013/11/09 Javascript
jquery+ajax+C#实现无刷新操作数据库数据的简单实例
2014/02/08 Javascript
JS 打印界面的CSS居中代码适用所有浏览器
2014/03/19 Javascript
关于JavaScript命名空间的一些心得
2014/06/07 Javascript
原生js实现class的添加和删除简单代码
2016/07/12 Javascript
AngularJS入门教程之Scope(作用域)
2016/07/27 Javascript
webpack实现热加载自动刷新的方法
2017/07/30 Javascript
详解基于vue-router的动态权限控制实现方案
2017/09/28 Javascript
vue router下的html5 history在iis服务器上的设置方法
2017/10/18 Javascript
使用JS代码实现俄罗斯方块游戏
2018/08/03 Javascript
layer弹出层全屏及关闭方法
2018/08/17 Javascript
angular 未登录状态拦截路由跳转的方法
2018/10/09 Javascript
浅谈vue中关于checkbox数据绑定v-model指令的个人理解
2018/11/14 Javascript
微信小程序canvas.drawImage完全显示图片问题的解决
2018/11/30 Javascript
解决vue项目axios每次请求session不一致的问题
2020/10/24 Javascript
python如何实现excel数据添加到mongodb
2015/07/30 Python
django 创建过滤器的实例详解
2017/08/14 Python
Atom的python插件和常用插件说明
2018/07/08 Python
Python使用pymysql从MySQL数据库中读出数据的方法
2018/07/25 Python
详细分析Python可变对象和不可变对象
2020/07/09 Python
通用自荐信范文
2014/03/14 职场文书
工作求职自荐信
2014/06/13 职场文书
运动会演讲稿100字
2014/08/25 职场文书
民间借贷协议书范本
2014/10/01 职场文书
2015年事业单位工作总结
2015/04/27 职场文书
民事申诉状范本
2015/05/20 职场文书
红白喜事主持词
2015/07/06 职场文书