【hacker的错误集】解决response.text获取中文乱码问题

时间:2022-10-07 08:54:31

????系列专栏:hacker的错误集 ????欢迎关注????点赞????收藏⭐留言???? ????个人主页:​​hacker_demo的51CTO博客​​ ????个人格言:不断的翻越一座又一座的高山,那样的人生才是我想要的。这一马平川,一眼见底的活,我不想要,我的人生,我自己书写,余生很长,请多关照,我的人生,敬请期待????????????

(hacker错误集)

错误内容

直接使用以下代码获取内容

import requests

# url = '你的url地址'
url = 'http://www.piaofang.biz/'
response = requests.get(url)
print(response.text)

会出现中文是乱码的情况: 【hacker的错误集】解决response.text获取中文乱码问题

错误分析

在获取网页源代码时如果不指定页面所对应的编码格式就会出现中文是乱码的情况,这时需要找到页面所所对应的编码格式 <font color=#0099ff size=4> 居然</font>:怎么找页面所对应的编码格式啊 <font color=#0099ff size=4> hacker</font>:我来教你一种最简单的方法

在你对应的页面鼠标右键点击查看源代码,在源代码中按Ctrl+F查找快捷键搜索charset即可看到页面所对应的编码格式(是gbk就设置为gbk,是utf-8就设置为utf-8

【hacker的错误集】解决response.text获取中文乱码问题

解决方案

改正后的代码如下:

import requests

# url = '你的url地址'
url = 'http://www.piaofang.biz/'
response = requests.get(url)
response.encoding = 'gbk'
print(response.text)

【hacker的错误集】解决response.text获取中文乱码问题

扩展知识(非常好用)

我们需要人为的去判断页面的编码格式,其实,我们有一个更智能的方法可以解决该问题,就是直接通过代码去获取当前页面的编码即可,代码如下:

import requests

# url = '你的url地址'
url = 'http://www.piaofang.biz/'
response = requests.get(url)
# apparent_encoding是从网页的响应内容分析编码的方式(更加intelligence智能)
response.encoding = response.apparent_encoding
print(response.text)

【hacker的错误集】解决response.text获取中文乱码问题

结束语????

以上就是hacker的错误集之解决response.text获取中文乱码问题,创作不易多多支持???????????? 你们的支持就是hacker创作的动力????????????

【hacker的错误集】解决response.text获取中文乱码问题