我在台湾网站上发现了一些文字。我摆脱了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的字符?这样可以摆脱错误,是吗?
答案 0 :(得分:1)
builtin open()
function有errors
参数:
with open(filename, encoding='utf-8', errors='replace') as file:
text = file.read()
您的文件可能使用其他一些字符编码,甚至(如果保存文本的代码有错误)是多种字符编码的混合。
您可以查看浏览器使用的编码,例如Chrome:"更多工具 - >编码"