zoukankan      html  css  js  c++  java
  • [转] Python 字符编码判断

    转自:http://www.cnblogs.com/dkblog/archive/2011/03/02/1980644.html

    法一:

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

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

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

    python setup.py install参考
    chardet官网 http://chardet.feedparser.org/
    chardet下载页面:http://chardet.feedparser.org/download/

  • 相关阅读:
    装java开发环境 报client/jvm.dll找不到
    json expected name at 1 1
    svn右键菜单不显
    win10 随记
    eclipse配置打开选中文件存储的目录快捷配置
    mybatis 常见面试题
    java 求取昨天日期
    字符串反转记录总结
    @RequestMapping 无法加载
    expected at least 1 bean which qualifies as autowire candidate for this depe (spring无法注入)
  • 原文地址:https://www.cnblogs.com/Arborday/p/10530441.html
Copyright © 2011-2022 走看看