#!/usr/bin/env python import cgi, jinja2, os, json, re import cgitb; cgitb.enable() from jinja2 import Template # Directory => ITEMS list (all files with a timestamp name, grouped) path = "/var/www/static/gait" try: ff = os.listdir(path) except OSError: ff = [] tpat = re.compile(r"^(\d\d\d\d)-(\d\d)-(\d\d)-(\d\d)-(\d\d)-(\d\d)") items = {} for f in ff: base, ext = os.path.splitext(f) ext = ext[1:] m = tpat.match(f) if m: t = m.group(0) if t not in items: items[t] = {} items[t][ext] = f items = [items[key] for key in sorted(items, reverse=True)] for i in items[10:]: for f in i.items(): print "deleting ", f fp = os.path.join(path, f) os.unlink(fp) # dump the data (debugging) # print "Content-type: text/plain" # print "" # print json.dumps(items, indent=2) # Output template with items print "Content-type: text/html" print "" print Template(u"""