对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实现读取目录所有文件的文件名并保存到txt文件代码
Nov 22 Python
Python的Tornado框架实现图片上传及图片大小修改功能
Jun 30 Python
Django原生sql也能使用Paginator分页的示例代码
Nov 15 Python
Python 实现删除某路径下文件及文件夹的实例讲解
Apr 24 Python
Python多线程处理实例详解【单进程/多进程】
Jan 30 Python
python使用HTMLTestRunner导出饼图分析报告的方法
Dec 30 Python
python打开文件的方式有哪些
Jun 29 Python
正确的理解和使用Django信号(Signals)
Apr 14 Python
Python+Appium实现自动抢微信红包
May 21 Python
详细介绍python类及类的用法
May 31 Python
Python常用配置文件ini、json、yaml读写总结
Jul 09 Python
基于Python实现一个春节倒计时脚本
Jan 22 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
解决phpmyadmin中文乱码问题。。。
2007/01/18 PHP
CodeIgniter实现更改view文件夹路径的方法
2014/07/04 PHP
Ext对基本类型的扩展 ext,extjs,format
2010/12/25 Javascript
javascript学习基础笔记之DOM对象操作
2011/11/03 Javascript
Angularjs基础知识及示例汇总
2015/01/22 Javascript
基于jQuery实现网页进度显示插件
2015/03/04 Javascript
介绍JavaScript的一个微型模版
2015/06/24 Javascript
基于javascript实现随机颜色变化效果
2016/01/14 Javascript
关于session和cookie的简单理解
2016/06/08 Javascript
AngularJS指令与指令之间的交互功能示例
2016/12/14 Javascript
jquery中用函数来设置css样式
2016/12/22 Javascript
超全面的vue.js使用总结
2017/02/12 Javascript
详解angular2实现ng2-router 路由和嵌套路由
2017/03/24 Javascript
jQuery实现字体颜色渐变效果的方法
2017/03/29 jQuery
基于Vue中使用节流Lodash throttle详解
2019/10/30 Javascript
[14:51]DOTA2 HEROS教学视频教你分分钟做大人-卓尔游侠
2014/06/13 DOTA
python中类的一些方法分析
2014/09/25 Python
基于python进行桶排序与基数排序的总结
2018/05/29 Python
超简单的Python HTTP服务
2019/07/22 Python
python中property和setter装饰器用法
2019/12/19 Python
PyTorch中Tensor的数据统计示例
2020/02/17 Python
基于Django signals 信号作用及用法详解
2020/03/28 Python
Ubuntu中配置TensorFlow使用环境的方法
2020/04/21 Python
Python如何实现邮件功能
2020/05/27 Python
Python Celery异步任务队列使用方法解析
2020/08/10 Python
python中time包实例详解
2021/02/02 Python
CSS3绘制有活力的链接下划线
2016/07/14 HTML / CSS
澳大利亚在线百货商店:Real Smart
2017/08/13 全球购物
同学会邀请书大全
2014/01/12 职场文书
迅雷Cued工作心得体会
2014/01/27 职场文书
网络技术专业推荐信
2014/02/20 职场文书
大课间体育活动方案
2014/03/12 职场文书
数学教育专业求职信
2014/07/22 职场文书
MySQL GRANT用户授权的实现
2021/06/18 MySQL
logback 实现给变量指定默认值
2021/08/30 Java/Android
使用Redis实现点赞取消点赞的详细代码
2022/03/20 Redis