Mega Code Archive

 
Categories / Python Tutorial / Network
 

Error Handling Example With Shutdown

import socket, sys, time host = "127.0.0.1" textport = 80 filename = 'test.txt' try:     s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) except socket.error, e:     print "Strange error creating socket: %s" % e     sys.exit(1) try:     port = int(textport) except ValueError:     try:         port = socket.getservbyname(textport, 'tcp')     except socket.error, e:         print "Couldn't find your port: %s" % e         sys.exit(1) try:     s.connect((host, port)) except socket.gaierror, e:     print "Address-related error connecting to server: %s" % e     sys.exit(1) except socket.error, e:     print "Connection error: %s" % e     sys.exit(1) time.sleep(10) try:     s.sendall("GET %s HTTP/1.0\r\n\r\n" % filename) except socket.error, e:     print "Error sending data: %s" % e     sys.exit(1) try:     s.shutdown(1) except socket.error, e:     print "Error sending data (detected by shutdown): %s" % e     sys.exit(1) while 1:     try:         buf = s.recv(2048)     except socket.error, e:         print "Error receiving data: %s" % e         sys.exit(1)     if not len(buf):         break     sys.stdout.write(buf)