题记

在获取中文字符的时候,如果出现乱码的情况,我们需要了解当前的字符串的编码形式。使用下面两种方法可以判断字符串的编码形式。

法一:

isinstance(s, str) 用来判断是否为一般字符串
isinstance(s, unicode) 用来判断是否为unicode

if type(str).__name__!="unicode":
str=unicode(str,"utf-8")
else:
pass

法二:

Python chardet 字符编码判断

使用 chardet 可以很方便的实现字符串/文件的编码检测。尤其是中文网页,有的页面使用GBK/GB2312,有的使用UTF8,如果你需要去爬一些页面,知道网页编码很重要的,虽然HTML页面有charset标签,但是有些时候是不对的。那么chardet就能帮我们大忙了。

chardet 安装

下载chardet后,解压chardet压缩包,直接将chardet文件夹放在应用程序目录下,就可以使用import chardet开始使用chardet了。

或者使用setup.py安装文件,将chardet拷贝到Python系统目录下,这样你所有的python程序只要用import chardet就可以了。

python setup.py install参考

chardet实例

>>> import urllib
>>> rawdata = urllib.urlopen('http://www.google.cn/').read()
>>> import chardet
>>> chardet.detect(rawdata)
{'confidence': 0.98999999999999999, 'encoding': 'GB2312'}
>>>chardet可以直接用detect函数来检测所给字符的编码。函数返回值为字典,有2个元数,一个是检测的可信度,另外一个就是检测到的编码。

更多入门教程可以参考:[http://www.bugingcode.com/python_start/] (http://www.bugingcode.com/python_start/)

最新文章

  1. isKindOfClass,isMemberOfClass
  2. 安装oracle数据库,登录 时无法连接目标机
  3. MariaDB远程连接配置
  4. mysql特有语法
  5. javascript语言精粹:继承
  6. PTA题---求两个有序序列中位数所体现的思想。
  7. [国嵌攻略][136][DM9000网卡驱动深度分析]
  8. Django1.8文档阅读手记
  9. java爬虫系列第四讲-采集"极客时间"专栏文章、视频专辑
  10. android上instant app介绍 类似于微信小程序
  11. Javascript学习一数据类型
  12. Linux命令 ls 和 ll 的使用方法与基本区别
  13. 值得关注的10个python语言博客
  14. React开发笔记
  15. 背水一战 Windows 10 (80) - 本地化
  16. 2017-12-21 FriceEngine试用与API中文化
  17. SpringMVC 网站
  18. linux下的文件结构
  19. R语言多层绘图
  20. 【Oracle+PHP】php连接oracle设定字符集,避免乱码

热门文章

  1. \_\_slots\_\_
  2. gcc -c xx.c 选项讲解
  3. Qt QPixmap QImage 图片等比例缩放到指定大小
  4. Spring boot 基于注解方式配置datasource
  5. Java实现卖票程序(两种线程实现)
  6. Java之接口(java8的新特性)
  7. iOS之input file调用相册控制器消失跳转到登陆页
  8. [LC] 146. LRU Cache
  9. [LC] 348. Design Tic-Tac-Toe
  10. certutil