Added optparse -> --min and --max for specifying range

This commit is contained in:
Stefan Ritter 2009-10-27 14:19:12 +01:00
parent c5f82a156b
commit 1ba3c75714

View file

@ -1,21 +1,35 @@
#!/usr/bin/python #!/usr/bin/python
# This program is free software. It comes without any warranty, to
# the extent permitted by applicable law. You can redistribute it
# and/or modify it under the terms of the Do What The Fuck You Want
# To Public License, Version 2, as published by Sam Hocevar. See
# http://sam.zoy.org/wtfpl/COPYING for more details.
# Author: Stefan Ritter <xeno@thehappy.de>
# Description: Query Debian WNPP Page (RFP)
import urllib2, sys, re import urllib2, sys, re
from optparse import OptionParser
if len(sys.argv) < 2: # Parse commandline arguments
print 'Syntax:', sys.argv[0], '[max_days_old]' parser = OptionParser()
sys.exit() parser.add_option('--min', dest='min_days_old', type="int", help='Minimum age of reports (in days)')
parser.add_option('--max', dest='max_days_old', type="int", help='Maximum age of reports (in days)')
(options, args) = parser.parse_args()
try: if not options.min_days_old and not options.max_days_old:
max_days_old = int(sys.argv[1]) parser.error('You have to give at least one of --min or --max')
except: sys.exit
print 'Not an integer!'
sys.exit()
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...
print 'Output reports that are older then', options.min_days_old, 'days and younger then', options.max_days_old, 'days:\n'
reports = [] reports = []
item = [] item = []
rfpurl = urllib2.urlopen('http://www.debian.org/devel/wnpp/requested') rfpurl = urllib2.urlopen('http://www.debian.org/devel/wnpp/requested')
for line in rfpurl: for line in rfpurl:
@ -44,5 +58,5 @@ for line in rfpurl:
item = [] item = []
for entry in reports: for entry in reports:
if int(entry[2]) <= max_days_old: if int(entry[2]) <= options.max_days_old and int(entry[2]) >= options.min_days_old:
print entry[1] + ': ' + entry[2] + ' days old (' + entry[0] + ')' print entry[1] + ': ' + entry[2] + ' days old (' + entry[0] + ')'