Mercurial > hg
view tests/get-with-headers.py @ 9594:f0c5c59d878d
merge with mpm
author | Dirkjan Ochtman <dirkjan@ochtman.nl> |
---|---|
date | Sun, 11 Oct 2009 21:32:55 +0200 |
parents | d5ebcf8f6855 |
children | 4d9dea174b84 |
line wrap: on
line source
#!/usr/bin/env python """This does HTTP GET requests given a host:port and path and returns a subset of the headers plus the body of the result.""" import httplib, sys, re try: import msvcrt, os msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY) except ImportError: pass headers = [h.lower() for h in sys.argv[3:]] conn = httplib.HTTPConnection(sys.argv[1]) conn.request("GET", sys.argv[2]) response = conn.getresponse() print response.status, response.reason for h in headers: if response.getheader(h, None) is not None: print "%s: %s" % (h, response.getheader(h)) print data = response.read() data = re.sub('\d+ years', 'many years', data) sys.stdout.write(data) if 200 <= response.status <= 299: sys.exit(0) sys.exit(1)