Импорт файла с неизвестной кодировкой из Python в MongoDB

Работа над импортом файла с разделителями табуляции через HTTP в Python.

Перед вставкой данных строки в MongoDB, я удаляю косые черты, галочки и кавычки из строки.

Какой бы ни была кодировка данных, MongoDB выдает мне исключение:

bson.errors.InvalidStringData: strings in documents must be valid UTF-8

Итак, пытаясь решить эту проблему, из прочитанного я хочу как можно быстрее преобразовать данные строки в Unicode с помощью функции unicode (). Кроме того, я попытался вызвать функцию decode (), передав "unicode" в качестве первого параметра, но получаю сообщение об ошибке:

LookupError: unknown encoding: unicode

Оттуда я могу выполнять свои строковые манипуляции, например заменять косые черты, галочки и кавычки. Затем перед вставкой данных в MongoDB преобразуйте их в UTF-8 с помощью функции str.encode ('utf-8').

Проблема: при преобразовании в Unicode я получаю сообщение об ошибке

UnicodeDecodeError: 'ascii' codec can't decode byte 0x93 in position 1258: ordinal not in range(128)

С этой ошибкой, Я не совсем уверен, с чего продолжить.

У меня такой вопрос: как мне успешно импортировать данные из файла, не зная его кодировки, и успешно вставить их в MongoDB, для которого требуется UTF-8?

Большое спасибо !

6
задан Joshua Burns 15 January 2011 в 05:13
поделиться