ich möchte eine .org Datei parsen, dazu verwende ich Orgnode. (http://members.optusnet.com.au/~charles ... Orgnode.py) Die (plaintext) Datei könnte so aussehen:
Code: Alles auswählen
* TODO [#A] Ich bin ein älteres TODO (29.12.2013)
DEADLINE: <2013-12-29 Sun>
* TODO [#A] Ich bin ein heutiges TODO (30.12.2013)
DEADLINE: <2013-12-30 Mon>
Code: Alles auswählen
import datetime
today = datetime.date.today()
filename = "/Users/NAME/org/privat.org"
nodelist = makelist(filename)
for n in nodelist:
if today == n.Deadline():
print "%s" % (n.Heading())
Nun möchte ich wissen, ob überfällige Einträge existieren:
Code: Alles auswählen
for n in nodelist:
if today > n.Deadline():
print "%s" % (n.Heading())
Laut Dokumentation liefert Deadline() ein date object zurück:
Code: Alles auswählen
# aus http://members.optusnet.com.au/~charles57/GTD/Orgnode.py
…
dd_re = re.search('DEADLINE:\s*<(\d+)\-(\d+)\-(\d+)', line)
if dd_re:
deadline_date = datetime.date(int(dd_re.group(1)),
int(dd_re.group(2)),
int(dd_re.group(3)) )
…
if deadline_date:
thisNode.setDeadline(deadline_date)
Code: Alles auswählen
for n in nodelist:
deadline = datetime.datetime.strptime(n.Deadline(), '%y-%m-%d').date()
Meiner Meinung nach versuche ich hier zwei datetime.date Objekte zu vergleichen. Sieht jemand den Fehler?
Danke im Voraus!