From 0344134a46bcd3c0273c376b2c3329e8ac60d104 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Fri, 13 Feb 2009 03:51:50 -0500 Subject: [PATCH] Make feed-to-zephyr into a function. --- jirabot.py | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/jirabot.py b/jirabot.py index 7c0c7d1..1c646b8 100755 --- a/jirabot.py +++ b/jirabot.py @@ -40,6 +40,26 @@ def jira_login(b): b.select_form(nr=0) b.submit() +def feed_to_zephyrs(thing, rss, parse): + zephyrs = [] + try: + feed = feedparser.parse(rss) + for e in feed.entries: + global old_time, new_time + t = int(calendar.timegm(e.date_parsed)) + if t <= old_time: + continue + if t > new_time: + new_time = t + try: + z = parse(e) + except: + z = zerror("Error parsing " + thing + ":\n" + e.id + "\n" + traceback.format_exc()) + zephyrs.append((t, z)) + except: + zephyrs.append((0, zerror("Error parsing " + thing + "s feed:\n" + traceback.format_exc()))) + return zephyrs + def parse_issue(e): issue = urlparse.urlparse(e.id)[2].rsplit('/', 1)[1] url = e.id @@ -102,25 +122,8 @@ old_time = int(open(time_file_new).read()) new_time = old_time zephyr.init() -zephyrs = [] - -for (thing, rss, parse) in [('issue', issues_rss, parse_issue), - ('comment', comments_rss, parse_comment)]: - try: - feed = feedparser.parse(rss) - for e in feed.entries: - t = int(calendar.timegm(e.date_parsed)) - if t <= old_time: - continue - if t > new_time: - new_time = t - try: - z = parse(e) - except: - z = zerror("Error parsing " + thing + ":\n" + e.id + "\n" + traceback.format_exc()) - zephyrs.append((t, z)) - except: - zephyrs.append((0, zerror("Error parsing " + thing + "s feed:\n" + traceback.format_exc()))) +zephyrs = (feed_to_zephyrs('issue', issues_rss, parse_issue) + + feed_to_zephyrs('comment', comments_rss, parse_comment)) open(time_file_new, 'w').write(str(new_time)) -- 2.45.1