Salve ragazzi sto scrivendo un piccolo client HTTP in python che implementa le funzionalità classiche del protocollo suddetto (GET, POST, HEAD e qualche altra).
Ovviamente uso le socket per la comunicazione ma a quanto pare ho un problema con la ricezione dei dati... vi posto il codice di un solo metodo il GET:

codice:
#Includere una funzione python, chiamata 'httpGET', che invia ad un server 
    #remoto un messaggio GET. L'intestazione della funzione è la seguente:
        #host-> è l'indirizzo dell'host (stringa)
        #port-> è la porta (intero)
        #path-> è il path della risers (stringa)
        #version-> è la versione del protovollo HTTP usato (stringa)
    def httpGET(self, host , port , path , version ):
        print "Sto tentando di effettuare la seguente richieta "
        print self._METHOD_['__GET__']+" "+path+" "+version+" al server "+host
        self.clientSocket.connect((host, port))
        try:
            self.clientSocket.sendall(self._METHOD_['__GET__']+" "+path+" "
                +version)
        except socket.error:
            print "Request not send"
        data = self.clientSocket.recv(2048)
        print "hello"
        #Eser.4
        self.clientSocket.close()
        print data
        body = self.SelectBody(data)
        self.DicPopulating(data, body)


codice:
def __init__(self):
        #Creazione della Socket per iniziare la comunicazione.
        try:
            self.clientSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        except socket.error, msg:
            print 'Failed to create a socket. Error Code: ' + str(msg[0]) +''
            +' , error  message: ' + msg[1]
            sys.exit();
Quest'ultimo è il costruttore utilizzato per creare l'oggetto socket!

il problema è proprio nella ricezione ma non capisco quale!!

PS: ovviamente questo è una esercitazione da svolgere...so bene che esiste la lib httplib.py...

Grazie!!