Mercurial > hg
view tests/get-with-headers.py @ 8589:3edf133dcb5a
dirstate: skip step 3 in walk if nothing new will match
nothing will ever match on match.never
nothing new will match on match.exact (all found in step 1)
nothing new will match on match.match when
there is no pattern and
there is no direcory in pats
author | Simon Heimberg <simohe@besonet.ch> |
---|---|
date | Thu, 14 May 2009 19:54:26 +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)