Die Zeit steht niemals still. Die Zeit macht nur vor dem Teufel halt und was mir noch so alles durch den Kopf geht. Aber speichern soll sie sich doch gefälligst lassen. WIe und wann ich immer es will. Doch leider ...
beim Import der mir wichtigen Google-Auswertungen, konnte ich zwar das Erstellungsdatum mittels
os.path.getctime('Path+Dateiname')
1233530393.0 ein Real mit Datum+Zeit+ und anderen Angaben
per Python feststellen.. Die Speicherung brachte aber (zunächst) nicht sinnvolles zu Stande. Ich hatte einfach time Funktionen angewandt, die nicht nötig waren. Zeit zum Googlen :(
Python time, datetime Module und die schnelle Anwendung
Jedes System hat seine Zeiteinheiten, seinen Nullpunkt unf ev. sein Ablaufdatum. Mit der Zeit tun sich alle schwer. Python bietet eine Vielzahl von Zeitmodulen. Die Basis ist jedeoch immer eine Speicherform. Ich stehe auf "Ticks". Ob der Begriff hier wirklich richtig ist tut der Sache keinen Abbruch. Ticks von einem bestimmten Systemzeitpunkt an gezählt ist doch fast verständlich.
Ticks wie sie von zum Beispiel von diversen datetime-Funktionen geliefert werden haben unterschiedliche Repräsentationen. Häufig sind es 9-stellige Tupel.
time.localtime(ticks)
(2009, 2, 2, 0, 19, 53, 0, 33, 0)
datetime.min.now()
datetime.datetime(2009, 2, 6, 9, 37, 9, 177125)
datetime.min.now()
Out[126]: datetime.datetime(2009, 2, 6, 9, 37, 11, 189609)
Die Kunst des Programmierens ist hier einfach darin die einfachste Wandlung von der Repräsentation der Zeit in günstiges Speicherformat der Datenbank zu finde. Hier habe ich mal wieder unnötig schwer getan. Denn MySQL und Linux und speziell unter Unbuntu macht es einfach wenn man die Lösung mal gefunden hat :(
Ein schönes umfassendes Python Time Tutorial ... lesenswert.
Ubuntu - Zeit unter Linux
MySQL timestamp
Der Feldtyp "timestamp" erwartet keinen Unix-Timestamp. Deswegen musst du den Wert noch mit der Funktion FROM_UNIXTIME in das richtige Format umwandeln. Die weiteren Infos sind einfach Klasse in der MySQL Date und Time Doku beschrieben..
MySQL und der timestamp
SELECT FROM_UNIXTIME(1196440219);
-> '2007-11-30 10:30:19'
mysql> SELECT FROM_UNIXTIME(1196440219) + 0;
-> 20071130103019.000000
mysql> SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(),
-> '%Y %D %M %h:%i:%s %x');
-> '2007 30th November 10:30:59 2007'
An diesem Beispiel erkennen wir, das das Problem keines ist!
Reply to this entry