Ich erstelle eine Django App und ich muss mehrere *.csv
Dateien importieren. One diese Datei hat folgende Struktur:Django CSV importieren mit Wagenrücklauf
id|value (header)
12|¤this is the
value¤
34|¤this is another
value¤
ich diesen Code verwenden, um die Datei zu analysieren:
try:
csvfile = open(path, "r", encoding='utf-16')
except IOError:
return False
cursor.copy_from(csvfile , tblname, columns=['id', 'value'], sep='|')
Aber wenn ich versuche, diese Datei zu analysieren, es gab mir diesen Fehler:
psycopg2.DataError: ERROR: missing data for the column "value"
Gibt es eine Möglichkeit, diese Datei zu analysieren, die Wagenrücklauf innerhalb Textidentifikator ('¤'
) hält?
Sie haben mehrere Möglichkeiten hier als Ich sehe es. Entweder benutze 'copy_expert' um Zeile für Zeile zu schreiben oder benutze die hier verwendete Methode http://bonesmoses.org/2014/07/25/friends-dont-let-friends-use-loops/ – hanshoi
Nicht sehr elegant, aber ich erschaffe das : Versuch: csvfile = open (Pfad, newline = '') außer IOError: Falsch CSVReader = csv.reader zurückzukehren (csvfile, delimiter = '|', QuoteChar = '¤') für Zeile in CSVReader : cursor.execute (INSERT INTO "+ Tabellenname +" (ID, Wert) VALUES ('"+ Zeile [0] +' ','" + Zeile [1] + '') ") zumindest funktioniert es –