summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xwnpp-query.py48
1 files changed, 26 insertions, 22 deletions
diff --git a/wnpp-query.py b/wnpp-query.py
index fc0e0af..058fd22 100755
--- a/wnpp-query.py
+++ b/wnpp-query.py
@@ -12,7 +12,6 @@
import urllib2, sys, re
from optparse import OptionParser
-# Parse commandline arguments
parser = OptionParser()
parser.add_option('-i', action='store_true', dest='itp', default=False, help='Query ITPs')
parser.add_option('-r', action='store_true', dest='rfp', default=False, help='Query RFPs')
@@ -27,38 +26,41 @@ if not options.min_days_old and not options.max_days_old or not options.itp and
if not options.min_days_old: options.min_days_old = 0
if not options.max_days_old: options.max_days_old = 9999
-# Here we go...
reports = []
item = []
-if options.itp:
- url = urllib2.urlopen('http://www.debian.org/devel/wnpp/being_packaged')
-else:
- url = urllib2.urlopen('http://www.debian.org/devel/wnpp/requested')
+
+if options.itp: url = urllib2.urlopen('http://www.debian.org/devel/wnpp/being_packaged')
+else: url = urllib2.urlopen('http://www.debian.org/devel/wnpp/requested')
for line in url:
- if re.findall('bugs\.debian\.org', line) or re.match('requested(.*)ago', line) or re.match('^(.*)days in preparation\.$', line) or re.match('^in preparation since(.*)$', line):
- # First line
- if re.match('^\<ul\>(.*),', line) or re.match ('^ \<li\>\<a href(.*)\</a\>,', line):
- # Link
- link = re.sub('<ul>', '', line).strip() # First line starts with <ul>
+
+ if re.findall('bugs\.debian\.org', line) \
+ or re.match('requested(.*)ago', line) \
+ or re.match('^(.*)days in preparation\.$', line) \
+ or re.match('^in preparation since(.*)$', line):
+
+ if re.match('^\<ul\>(.*),', line) \
+ or re.match ('^ \<li\>\<a href(.*)\</a\>,', line):
+
+ link = re.sub('<ul>', '', line).strip()
link = line[14:43]
item.append(link)
- # Name
- name = re.sub('<ul>', '', line).strip() # First line starts with <ul>
+ name = re.sub('<ul>', '', line).strip()
name = name[44:]
name = name.split(':', 1)[0]
item.append(name)
- # Second line
- if re.match('^requested(.*)$', line) or re.match('^(.*)days in preparation(.*)$', line) or re.match('^in preparation since yesterday(.*)$', line):
+ if re.match('^requested(.*)$', line) \
+ or re.match('^(.*)days in preparation(.*)$', line) \
+ or re.match('^in preparation since yesterday(.*)$', line):
+
if options.itp:
- if re.match('^in preparation since yesterday', line):
- days = '1'
- else:
- days = line.split(' ')[0]
- else:
- days = line.split(' ')[1]
+
+ if re.match('^in preparation since yesterday', line): days = '1'
+ else: days = line.split(' ')[0]
+
+ else: days = line.split(' ')[1]
item.append(days)
if len(item) == 3:
@@ -66,5 +68,7 @@ for line in url:
item = []
for entry in reports:
- if int(entry[2]) <= options.max_days_old and int(entry[2]) >= options.min_days_old:
+ if int(entry[2]) <= options.max_days_old \
+ and int(entry[2]) >= options.min_days_old:
+
print entry[1] + ': ' + entry[2] + ' days ago (' + entry[0] + ')'