python 中爬虫 content和text的区别,,一直在想reques


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

import requestsheaders = {    "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的区别

评论关闭