python中response.text 和response.content的区别详解
1.response.text
- 类型:str
- 解码类型: 根据HTTP 头部对响应的编码作出有根据的推测,推测的文本编码
- 如何修改编码方式:response.encoding=”gbk”
2. response.content
- 类型:bytes
- 解码类型: 没有指定
- 如何修改编码方式:response.content.deocde(“utf-8”)
3.获取网页源码的通用方式:
response.content.decode()
response.content.decode(“GBK”)
解码方式可以根据响应头中找到Content-Type:text/html;charset=utf-8或者网页源码中content="text/html;charset=utf-8''来决定.
response.text
以上三种方法从前往后尝试,能够100%的解决所有网页解码的问题
所以:更推荐使用**response.content.deocde()**的方式获取响应的html页面
补充:python3中requests 常用response
看代码吧~
import requests
res = requests.get("http://127.0.0.1:9092")
print(res.status_code) # 200
print(res.url) # http://127.0.0.1:9092/
print(res.headers) # {'Content-Type': 'application/json; charset=utf-8', 'Content-Length': '10', 'Date': 'Sat, 22 Dec 2018 13:36:16 GMT', 'Connection': 'keep-alive'}
print(res.cookies) # ]>
print(res.text) # 8248154254
print(res.content) # b'8248154254' 写图片
print(res.cookies['cid']) # hello world
# 爬取 图片
r1 = requests.get('https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1545496551516&di=8ed19596bc72aa87299ed7f234830128&imgtype=0&src=http%3A%2F%2Fimg5.duitang.com%2Fuploads%2Fitem%2F201107%2F31%2F20110731155631_htMcs.jpg')
b = r1.content
with open('hao.jpg','wb') as f:
f.write(b)
以上为个人经验,希望能给大家一个参考
最后更新于 2021-11-25 09:47:16 并被添加「python response.txt response.content 」标签,已有 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
相关文章
- 包邮南极人法兰绒浴巾2022年新款家用吸水速干超柔加厚大毛巾盖毯
- 一次性口罩薄款透气独立包装蓝一层防晒黑夏季男女两层防飞沫50只
- 如何通过微信小程序查询当地疫情风险等级?
- flask框架中的cookie和session使用
- xp系统怎么安装 U盘/光盘安装XP操作系统图文讲解