#!/usr/bin/env python from __future__ import with_statement import httplib import sys usage = "./gethttpoptions.py " def make_conn(url, page): conn = httplib.HTTPConnection(url) conn.request("OPTIONS", page) return conn.getresponse() def parse_response(url, page, response): code = str(response.status) + ' ' + response.reason code = code.strip() server = response.getheader('Server') options = response.getheader('Allow') print """\"%s\",\"%s\",\"%s\",\"%s\",\"%s\"""" % (url, page, code, server, options) def main(): url = sys.argv[1] with open(sys.argv[2], 'rU') as infile: for page in infile: page = page.strip() if page[0] != '/': page = '/' + page if page[-1] != '/': page = page + '/' try: http = make_conn(url, page) parse_response(url, page, http) except: return if __name__ == "__main__": if len(sys.argv) < 3: print usage sys.exit(1) else: main()