#!/usr/bin/python import sys, re, time def save(list, para): matched = re.search(r'date="(\d+)"', para) if matched: list.append(matched.group(1)+':'+para) para = "" list = [] while 1: inl = sys.stdin.readline() if not inl: break para = para + inl if len(inl) == 1: save(list, para) para = "" save(list, para) print ''' qmail http://www.qmail.org Dan Bernstein's qmail en-us qmail http://www.qmail.org/Q.6.01.Logo.small.jpg http://www.qmail.org ''' list.sort() topten = list[-10:] topten.reverse() for para in topten: para = re.sub(r'\n', ' ', para) para = re.sub(r'', '', para) para = re.sub(r'', '', para) para = re.sub(r'(.*?)', r'\2', para) matched = re.search(r'(.*?)', para) pubdate = re.match(r'(.*?):', para).group(1) t = [ int(pubdate[0:4]), int(pubdate[4:6]), int(pubdate[6:8]), 0, 0, 0, 0, 1, 0] pubdate = time.strftime("%d %b %Y %H:%M:%S +0000", t) if matched: title = matched.group(2) link = "http://qmail.org/top.html#" + matched.group(1) else: title = "Badly formatted, sorry." % para link = "mailto:nelson@crynwr.com" print ''' %(title)s %(link)s %(pubdate)s ''' % locals() # $_ print ''' '''