博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Request库使用response.text返回乱码问题
阅读量:5225 次
发布时间:2019-06-14

本文共 828 字,大约阅读时间需要 2 分钟。

我们日常使用Request库获取response.text,这种调用方式返回的text通常会有乱码显示:

import requestsres = requests.get("https://www.baidu.com")print(res.text) #...name=tj_briicon class="bri" style="display: block;">æ´å¤äº§å  

 

如上:出现了乱码

解决方案:一

import requestsres = requests.get("https://www.baidu.com")print(res.content.decode('utf-8')) #...name=tj_briicon class="bri" style="display: block;">更多产品  ...

  

如上:使用这种方法调用显示了正确的中文

  使用res.content时,返回的数据格式其实是二进制格式,然后通过decode()转换为utf-8,这样就解决了通过response.text直接返回显示乱码的问题

 

解决方案:二

import requestsres = requests.get("https://www.baidu.com")res.encoding = 'utf-8'print(res.text)#...name=tj_briicon class=bri style="display: block;">更多产品  

Requests 会基于 HTTP 头部对响应的编码作出有根据的推测。当你访问 response.text 之时,Requests 会使用其推测的文本编码。你可以找出 Requests 使用了什么编码,并且能够使用 response.encoding 属性来改变它

转载于:https://www.cnblogs.com/nieliangcai/p/10334947.html

你可能感兴趣的文章
CSS背景颜色、背景图片、平铺、定位、固定
查看>>
口胡:[HNOI2011]数学作业
查看>>
我的第一个python web开发框架(29)——定制ORM(五)
查看>>
中国剩余定理
查看>>
基础笔记一
查看>>
uva 10137 The trip
查看>>
Count Numbers
查看>>
编写高质量代码改善C#程序的157个建议——建议110:用类来代替enum
查看>>
网卡bond技术
查看>>
UITabbarController的UITabbarItem(例:"我的")点击时,判断是否登录
查看>>
UNIX基础知识之输入和输出
查看>>
【洛谷 P1666】 前缀单词 (Trie)
查看>>
数据库锁机制及乐观锁,悲观锁的并发控制
查看>>
图像处理中双线性插值
查看>>
RobHess的SIFT代码解析之RANSAC
查看>>
03 线程池
查看>>
201771010125王瑜《面向对象程序设计(Java)》第十三周学习总结
查看>>
手机验证码执行流程
查看>>
python 基础 ----- 变量
查看>>
设计模式课程 设计模式精讲 2-2 UML类图讲解
查看>>