habe mich bislang geziert hier Fragen zu stellen, jetzt drückt es aber doch zu sehr, da ich nicht weiß wo anzusetzen ist:
Problem: ich parse ein Logfile und kann erfolgreich 3 wichtige Werte extrahieren, diese werden mittels print value als 3 Zeilen ausgespuckt:
06026104
0.1501
02484.796
Ich möchte diese Werte in SQLite Tabelle mit 4 Werten übergeben, der erste Wert ist die ID als prim.Key, die anderen 3 SPalten sollen gefüllt werden mit obigen Werten. SQLite-Fehlermeldung, die Tabelle hat ja 4 Spalten (eine ID, die soll doch aber SQLite selbst führen)
Nun weiß ich nicht, ob ich im die Werte nochmal vorbereiten muß, oder ob ich bei der SQLite-Eintragung ansetzen soll? Bin blutigster Anfänger und sehe mitunter Möglichkeiten nicht.
Hat jemand eine Idee?
Code: Alles auswählen
with open("verbrauch.log") as fp:
for line in fp:
match = re.search(r'(0\.0\.0|1\.6\.1|1\.8\.1)\(([0-9\.]+)', line)
if not match: continue
version, value = match.groups() #version ist zu vernachlässigen
#print value würde Ausgabe wie oben bringen
for item in value:
cursor.executemany("INSERT INTO tabellename values (?,?,?)", item)
# cursor.execute('INSERT INTO tabellename(sernr, peak, verb) values (?,?,?)', item)
# cursor.execute("INSERT INTO tabellename(sernr) values (?)",(item[0],));
# cursor.execute("INSERT INTO tabellename(peak) values (?)",(item[1],));
# cursor.execute("INSERT INTO tabellename(verb) values (?)",(item[2],));
fp.close()
conn.commit()
cursor.close()
conn.close()