温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

request中response.text和response.content的区别及怎么用

发布时间:2022-02-24 16:56:55 来源:亿速云 阅读:304 作者:iii 栏目:开发技术

这篇文章主要讲解了“request中response.text和response.content的区别及怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“request中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) # <RequestsCookieJar[<Cookie cid=hello world for 127.0.0.1/>]>
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)

感谢各位的阅读,以上就是“request中response.text和response.content的区别及怎么用”的内容了,经过本文的学习后,相信大家对request中response.text和response.content的区别及怎么用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI