python 采集中文乱码问题的完美解决方法

yipeiwu_com7年前Python基础

近几日遇到采集某网页的时候大部分网页OK,少部分网页出现乱码的问题,调试了几日,终于发现了是含有一些非法字符造成的..特此记录

1. 在正常情况下..可以用

import chardet

thischarset = chardet.detect(strs)["encoding"]

来获取该文件或页面的编码方式

或直接抓取页面的charset = xxxx 来获取

2. 遇到内容中有特殊字符时指定的编码一样会造成乱码..即内容中非法字符造成的,可以采用编码忽略非法字符的方式来处理.

strs = strs.decode("UTF-8","ignore").encode("UTF-8")

decode的第二个参数表示遇到非法字符时所采取的方式

该参数默认为抛出异常.

以上就是小编为大家带来的python 采集中文乱码问题的完美解决方法的全部内容了,希望对大家有所帮助,多多支持【听图阁-专注于Python设计】~

相关文章

Pytorch 实现自定义参数层的例子

注意,一般官方接口都带有可导功能,如果你实现的层不具有可导功能,就需要自己实现梯度的反向传递。 官方Linear层: class Linear(Module): def __in...

django序列化serializers过程解析

这篇文章主要介绍了django序列化serializers过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 DRF的核心 就是...

Python中实现三目运算的方法

C语言中三目运算符 复制代码 代码如下:    expression ?expr1:expr2;  //expression 为真则取表达式expr...

Python 迭代,for...in遍历,迭代原理与应用示例

本文实例讲述了Python 迭代,for...in遍历,迭代原理与应用。分享给大家供大家参考,具体如下: 迭代是访问集合元素的一种方式。什么时候访问元素,什么时候再迭代,比一次性取出集合...

简单了解django orm中介模型

简单了解django orm中介模型

什么是中介模型 中介模型针对的是ManyToMany(多对多)的时候第三张表的问题, 中介模型其实指的就是我们不通过Django创建第三张表,如果自己不创建第三张表,而是由django给...