当前位置: 首页 > news >正文

盘点3种Python网络爬虫过程中的中文乱码的处理方法

网络爬虫过程中三种中文乱码的处理方案,希望对大家的学习有所帮助

一、思路

其实解决问题的关键点就是在于一点,就是将乱码的部分进行处理,而处理的方案主要可以从两个方面进行出发。其一是针对整体网页进行提前编码,其二是针对局部具体中文乱码的部分进行编码处理。

二、分析

1、当出现网页编码为gbk,获取到的内容在控制台打印类似如下情况的时候:

ÃÀÅ® µçÄÔ×À ¼üÅÌ »ú·¿ ¿É°® С½ã½ã4k±ÚÖ½

虽然看上去控制台输出正常,没有报错, 但是输出的中文内容,却不是普通人能看得懂的。

2、当出现网页编码为gbk,获取到的内容在控制台打印类似

�װŮ�� ��Ů ˮ СϪ Ψ��
 这种情况下的话,就可以通过使用本文给出的三种方法进行解决,屡试不爽!

三、具体实现

1)方法一:将requests.get().text改为requests.get().content
我们可以看到通过text()方法获取到的源码,之后进行打印输出的话,确实是会存在乱码的,如下图所示。
在这里插入图片描述
此时可以考虑将请求变为.content,得到的内容就是正常的了。
在这里插入图片描述
2)方法二:手动指定网页编码
#手动设定响应数据的编码格式

response.encoding = response.apparent_encoding

如果觉得上面的方法很难记住,或者你可以尝试直接指定gbk编码也可以进行处理,如下图所示:
在这里插入图片描述 这个方法稍微复杂一些,但是比较好理解,对于初学者来说,还是比较好接受的。
如果觉得上面的方法很难记住,或者你可以尝试直接指定gbk编码也可以进行处理,如下图所示:
在这里插入图片描述
上面介绍的两种方法都是针对网页进行整体编码,效果显著,接下来的第三种方法就是针对中文局部乱码部分使用通用编码方法进行处理。

3)方法三:使用通用的编码方法

img_name.encode('iso-8859-1').decode('gbk')

在这里插入图片描述

http://www.lryc.cn/news/234084.html

相关文章:

  • 小程序富文本图片大小问题
  • Diagrams——制作短小精悍的流程图
  • Elasticsearch基础条件查询
  • 【SAP-ABAP】SAP与外围系统对接方式
  • 云计算的发展趋势
  • 国民技术Cortex-M0系列单片机IAP升级
  • Pycharm中添加Python库指南
  • Oracle OCP / MySQL OCP认证容易通过吗
  • flutter web 中嵌入一个html
  • 使用Spark SQL读取阿里云OSS的数据
  • 【0235】修改私有内存(private memory)中的MyBEEntry时,st_changecount值前后变化
  • Linux学习命令之source
  • 2342. 数位和相等数对的最大和
  • FISCO BCOS 3.0【01】搭建第一个区块链网络
  • UE4动作游戏实例RPG Action解析四:装备系统
  • AIGC之Stable Diffusion
  • PHP接收并处理请求中携带的xml格式的信息
  • 信息安全相关标准
  • Python入门学习篇(一)——注释变量输入输出
  • 基于单片机智能液位水位监测控制系统设计
  • iOS 添加震动效果
  • 合并word中参考文献-(Endnote生成)
  • linux(centos7)常用命令 开启关闭防火墙
  • 数据结构与算法面试题——C++
  • 数字音频工作站FL Studio21.1中文版本如何下载?
  • Linux 无名管道实现文件复制
  • 【机器学习】 逻辑回归算法:原理、精确率、召回率、实例应用(癌症病例预测)
  • 算法萌新闯力扣:存在重复元素II
  • 《洛谷深入浅出基础篇》——P3405 citis and state ——哈希表
  • 在QGIS中加载显示3DTiles数据