在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')
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。