Added server basic.
authorEugen Sawin <sawine@me73.com>
Wed, 05 Oct 2011 01:19:47 +0200
changeset 79d9401f1cf76
parent 6 60fb50abe556
child 8 c926073022f4
Added server basic.
server/server.py
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/server/server.py	Wed Oct 05 01:19:47 2011 +0200
     1.3 @@ -0,0 +1,42 @@
     1.4 +#!/usr/bin/python
     1.5 +
     1.6 +from argparse import ArgumentParser
     1.7 +
     1.8 +def parse_args():
     1.9 +    parser = ArgumentParser(description="")
    1.10 +    parser.add_argument("port", type=int, help="port")
    1.11 +    parser.add_argument("-a", help="host address")
    1.12 +    return parser.parse_args()	
    1.13 +
    1.14 +def main():
    1.15 +	args = parse_args()
    1.16 +	port = args.port
    1.17 +	server = Server("localhost", port, GetHandler)
    1.18 +	server.run()
    1.19 +
    1.20 +from BaseHTTPServer import BaseHTTPRequestHandler
    1.21 +from BaseHTTPServer import HTTPServer
    1.22 +import SocketServer
    1.23 +import urlparse
    1.24 +
    1.25 +class GetHandler(BaseHTTPRequestHandler):
    1.26 +	def do_GET(self):
    1.27 +		parsed_path = urlparse.urlparse(self.path)
    1.28 +		message = '\n'.join(("client: %s:%i" % self.client_address,
    1.29 +				     "path: %s" % parsed_path.path,
    1.30 +				     "query: %s" % parsed_path.query,
    1.31 +				     "params: %s" % parsed_path.params))
    1.32 +		self.send_response(200)
    1.33 +		self.end_headers()
    1.34 +		
    1.35 +class Server(HTTPServer):
    1.36 +	def __init__(self, host, port, handler):
    1.37 +		HTTPServer.__init__(self, (host, port), handler)
    1.38 +		self.host = host
    1.39 +		self.port = port
    1.40 +	def run(self):
    1.41 +		self.serve_forever()
    1.42 +
    1.43 +if __name__ == "__main__":
    1.44 +	main()
    1.45 +