Я добавляю данные из CSV-файла в базу данных.Если я открою файл CSV, некоторые из записей содержат маркеры - я их вижу.file
говорит, что кодируется как ISO-8859.
$ file data_clean.csv
data_clean.csv: ISO-8859 English text, with very long lines, with CRLF, LF line terminators
Я прочитал его следующим образом и преобразовал из ISO-8859-1 в UTF-8, что требуется для моей базы данных.
row = [unicode(x.decode("ISO-8859-1").strip()) for x in row]
print row[4]
description = row[4].encode("UTF-8")
print description
Это дает мне следующее:
'\xa5 Research and insight \n\xa5 Media and communications'
¥ Research and insight
¥ Media and communications
Почему символ пули \ xa5 конвертируется в символ иены?
Я предполагаю, потому что я читаю это как неправильную кодировку, но какая правильная кодировка в этом случае?Это также не cp1252.
В более широком смысле, есть ли инструмент, в котором можно указать (i) строку (ii) известного символа и узнать кодировку?