Python利用第三方庫chardet可以判斷字符集。
https://chardet.readthedocs.io
>>> import urllib
>>> rawdata = urllib.urlopen('http://yahoo.co.jp/').read()
>>> import chardet
>>> chardet.detect(rawdata)
{'encoding': 'EUC-JP', 'confidence': 0.99}
判斷文件的字符集
detector = UniversalDetector()
for filename in glob.glob('*.txt'):
print(filename.ljust(60), )
detector.reset()
for line in open(filename, 'rb'):
detector.feed(line)
if detector.done: break
detector.close()
print(detector.result)
顯示結果:

