python 中爬虫 content和text的区别
Posted 是鱼的记忆
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 中爬虫 content和text的区别相关的知识,希望对你有一定的参考价值。
一直在想requests的content和text属性的区别,从print 结果来看是没有任何区别
import requests headers = { "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" } url = ‘https://www.sogou.com/web?query={}‘ key = input(‘请输入‘) params = {‘query‘:key} response = requests.get(url,params=params,headers=headers) print(response.text)
结论是:text 返回的是unicode 型的数据,一般是在网页的header中定义的编码形式。
content返回的是bytes,二级制型的数据。
也就是说你如果想要提取文本就用text
但是如果你想要提取图片、文件,就要用到content
# 1. 导入requests模块 import requests # 2. 发送请求获取二进制数据(bytes) respone = requests.get("http://imgsrc.baidu.com/image/c0%3Dpixel_huitu%2C0%2C0%2C294%2C40/sign=098c3f828cd6277ffd1f3a7841407a5c/3c6d55fbb2fb4316e3afd1432ba4462309f7d353.jpg") # 获取二进制数据; 注意: 这里不要解码, 因为图片,视频等文件都是二进制的不是文本,不需要解码 # data = respone.content # 3. 把数据写入文件 with open("壁纸.jpg", "wb") as f: f.write(respone.content)
以上是关于python 中爬虫 content和text的区别的主要内容,如果未能解决你的问题,请参考以下文章