代码改变世界

python requests模块的两个方法content和text

2018-03-14 22:16  ZengGW  阅读(5271)  评论(0编辑  收藏  举报

  requests模块下有两个获取内容的方法,很奇怪,都是获取请求后内容的方法,有什么区别呢??

一、区别

  content:返回bytes类型的数据也就是二进制数据

  text:返回的就是纯文本(Unicode类型的数据)

二、实例

  content:在我们需要获取比如一些文件的时候,像图片验证码,音乐文件,视频文件等 

url = 'http://www.ncgjj.com.cn:8081/wt-web/captcha'
res = requests.get(url)
f = '../log/img.png'
with open(f, 'wb') as f:
    f.write(res.content)

  上边的代码就是获取图片验证码的实例了,这里使用的是content获取内容,并以wb模式写入获取到的二进制数据,如果使用的是text的话,那保存的文件里边显示的不是图片,可以试一下

  text:获取一些html信息之类的文本

# 屏蔽获取https协议的网站产生的warning级别的错误
requests.packages.urllib3.disable_warnings()
url = 'https://www.baidu.com'
response = requests.get(url, verify=False)
print response.text