parser.add_argument('--year', type=int, default=2012, action='store', help='Year') parser.add_argument('--accreditation', action='store', help='Accreditation number to search for') parser.add_argument('--scheme', action='store', help='Scheme to search (defaults to RO and REGO)') args = parser.parse_args() ocs = CertificateSearch() crit = "Searching Ofgem Certificates: " crits = [] if args.month: ocs.set_month(args.month) crits.append('month %s' % args.month) if args.year: ocs.set_year(args.year) crits.append('year %s' % args.year) if args.scheme: ocs.filter_scheme(args.scheme) crits.append('scheme %s' % args.scheme) if args.accreditation: ocs.filter_accreditation(args.accreditation.upper()) crits.append("accreditation number '%s'" % args.accreditation.upper()) print crit + ", ".join(crits) ocs.get_data() print "Total of %d records returned" % len(ocs) for cert in ocs.certificates: print(cert.as_string())