如何只在文本文件中保留Big5字符

时间:2015-02-19 01:19:40

标签: python-3.x unicode big5

我在台湾网站上发现了一些文字。我摆脱了HTML,只保留了我需要的txt文件。在Firefox / Chrome中正确显示txt文件的内容。使用Python3,如果我f = open(text_file).read()我收到此错误:

'utf-8' codec can't decode byte 0xa1 in position 29: invalid start byte

ETA:我使用的是ubuntu,所以我对Python或终端中的任何解决方案感到高兴!

如果我f = codecs.open(os.path.join(path, 'my_text.txt'), 'r', encoding='Big5')然后read()我收到此消息:

'big5' codec can't decode byte 0xf9 in position 1724: illegal multibyte sequence

我只需要中文字符,我怎么能只保留那些编码为Big5的字符?这样可以摆脱错误,是吗?

1 个答案:

答案 0 :(得分:1)

builtin open() functionerrors参数:

with open(filename, encoding='utf-8', errors='replace') as file:
    text = file.read()

您的文件可能使用其他一些字符编码,甚至(如果保存文本的代码有错误)是多种字符编码的混合。

您可以查看浏览器使用的编码,例如Chrome:"更多工具 - >编码"