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'編碼是一種應該避免的黑客,除非你專門用它來清理別人的混亂,而且你真的知道自己在做什麼。 –