如何查看字符编码类型?python3.5使用chardet模块总是报错

查看:191
本文介绍了如何查看字符编码类型?python3.5使用chardet模块总是报错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

一直被编码问题所困惑,在网上搜索了如何查看字符编码类型?,听说chardet模块很方便,但是安装了chardet模块之后,使用一直报错ValueError: Expected a bytes object, not a unicode object,不知道什么原因。
如下图所示:

解决方案

你的 a 已经是字符了,就不需要再测试编码了。
chardet 是用来测试 bytes 的编码格式的。


py3里,只有 unicode编码格式字节串才能叫作str
其他编码格式的统统都叫bytes,如:gbkutf-8gb2312…………

这些bytes要转换为 unicode编码 才能当作str来用,就需要知道 bytes 的编码格式。
如果你事先知道,比如gbk,就可以用 bytes.decode('gbk')将bytes解码为unicode字符。
如果很不幸,你有一堆bytes,不知道它们的编码(例如 网站服务器返回的响应体),
这时候,你就需要chardet 来测试它们的编码。

这篇关于如何查看字符编码类型?python3.5使用chardet模块总是报错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆