189 8069 5689

Python任意字符集转换

在python处理文本的过程中,经常会有文本字符集转换的情况,
而我们希望用一个方法,不用关心文本原本的字符集是什么样的,直接转换成想要的任何字符集就可以了。

在洞头等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、成都做网站 网站设计制作按需求定制设计,公司网站建设,企业网站建设,成都品牌网站建设,营销型网站,外贸网站制作,洞头网站建设费用合理。

方法一:

import chardet  
def convert_encoding(data,new_coding='UTF-8'):
  # 任意字符集转换
  encoding = chardet.detect(data)['encoding']
  if new_coding.upper() != encoding.upper():
    data  = data.decode(encoding,data).encode(new_coding)
  return data 

方法二:

import icu  
def convert_encoding2(data,new_coding='UTF-8'):

  encoding = icu.CharsetDetector(data).detect().getName()  
  # encoding = chardet.detect(content)['encoding']
  if new_coding.upper() != encoding.upper():
    # data  = data.decode(encoding,data).encode(new_coding)
    data = unicode(data,coding).encode(new_coding)
  return data 

方法三:

import cchardet
def convert_encoding3(data,new_coding='UTF-8'):
  encoding = cchardet.detect(data)['encoding']
  if new_coding.upper() != encoding.upper():
    data  = data.decode(encoding,data).encode(new_coding)
  return data 

使用方法:

此处使用方法一

#转换成utf-8
convert_encoding(data,'utf-8')

#转抱成GBK  
convert_encoding(data,'gbk')

#转抱成GB2312
convert_encoding(data,'gbk')

网站标题:Python任意字符集转换
标题链接:http://jkwzsj.com/article/ijoihh.html

其他资讯