Beim Importieren einer Datei mit Tabstopps als Trennzeichen über HTTP in Python.Importieren einer Datei mit unbekannter Codierung aus Python in MongoDB
Bevor Sie die Daten einer Zeile in MongoDB einfügen, entferne ich Schrägstriche, Ticks und Zitate aus der Zeichenfolge.
Unabhängig von der Codierung der Daten, MongoDB mir die Ausnahme wirft:
bson.errors.InvalidStringData: strings in documents must be valid UTF-8
So in dem Bemühen, dieses Problem zu lösen, aus der Lektüre ich getan habe, möchte ich so schnell wie möglich Konvertieren Sie die Daten der Zeile mit der Funktion unicode() in Unicode. Darüber hinaus habe ich versucht, die decode() Funktion übergeben „Unicode“ als ersten Parameter aufrufen, aber die Fehlermeldung:
LookupError: unknown encoding: unicode
Von dort aus kann ich meine Stringmanipulationen wie das Ersetzen der Schrägstriche, Zecken machen, und Zitate. Dann, bevor Sie die Daten in MongoDB einfügen, konvertieren Sie es in UTF-8 mit der Funktion Str.encode ('utf-8').
Problem: Wenn in Unicode konvertieren, ich den Fehler erhalte
UnicodeDecodeError: 'ascii' codec can't decode byte 0x93 in position 1258: ordinal not in range(128)
Mit diesem Fehler, ich bin nicht sicher, wo genau fortzusetzen.
Meine Frage ist: Wie importiere ich erfolgreich die Daten aus einer Datei, ohne ihre Codierung zu kennen und sie erfolgreich in MongoDB einzufügen, die UTF-8 benötigt?
Vielen Dank!
Warum ist dieser Tag "csv"? –
Aber Sie sagten "Importieren einer Tab-getrennte Datei über HTTP" ... wo passt "CSV" hinein? –