Hai tre compiti:
- Escludi i campi della data dall'elenco
- Configura Python per eseguire comandi SQL
- Crea codice per inserire i dati nel database
Non sono sicuro al 100% di come speri di archiviare i dati che hai incluso nel database, ma darò la mia ipotesi migliore.
items_to_insert = []
for dictionary in ls:
#pop removes the value from the dict
date_for_insert = dictionary.pop("datetime", None)
if date_for_insert is None:
raise ValueError('No datetime - aborting')
for key in dictionary:
items_to_insert.append([date_for_insert, key, dictionary[key]
Questo codice va a ogni dizionario nell'elenco ls, rimuove il datetime e quindi analizza i dati in una matrice. Ora sei pronto per inserire i dati
Per l'attività 2 dovrai usare PyMySQL o qualcosa del genere, e configurare le tue connessioni e cose, quindi per l'attività 3 eseguire:
for item in items_to_insert:
cursor.execute("INSERT INTO mytable (Datetime,Item,Value) VALUES ('{}', '{}', '{}')".format(item[0], item[1], item[2]))
O qualcosa di simile. Questa riga è più semplice grazie alla preelaborazione dei dati dall'alto.
Potrebbe essere necessario formattare la data e l'ora in un determinato modo affinché questo codice funzioni correttamente.