0
请我需要这方面的帮助:的UnicodeDecodeError:“字符映射”编解码器不能在1010494位置解码字节0x9d:字符映射为<undefined>
url ='https://www.sec.gov/Archives/edgar/data/1437750/0001477932-13-004416.txt'
with open('file', 'wb') as f:
f.write(requests.get('%s' % url).content)
with open('file', 'r') as t:
words= t.read()
上面给了我以下错误:
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 1010494: character maps to < undefined>
谢谢!
合作。非常感谢。 – user5282933
什么样的ASCII字符集是0x9d有意义?这不是有效的Windows-1252。 Python“latin-1”编解码器将其转换为Unicode 0x9D,即“操作系统命令”。[1]这没什么意义。使用“latin-1”编解码器转换此类文本不会使Python程序崩溃,但您在Unicode中得到的是带有[009d]的框。转换为“拉丁-1”只是关于这个问题的文件。 它似乎是某种引用标记,当它出现在英文文本中时。但它不是Windows-1252的特殊引号之一。 [1] http://www.fileformat.info/info/unicode/char/009d/index.htm –
它不仅* UTF-8编码,似乎嵌入在页面中的二进制数据。你不应该试图以文本的形式读取二进制数据!使用'latin-1'编码是一种应该避免的黑客,除非你专门用它来清理别人的混乱,而且你真的知道自己在做什么。 –