[Python] controllare risposta tcp/ip
Remo The Last
py.remothelast a yahoo.it
Mar 21 Ago 2012 17:39:47 CEST
Per esperienza ti consiglio di usare scapy che č un mostro per la gestione client/server per i protocolli + diversi.
Gestisci la risposta creando addirittura delle tabelle o semplicemente i campi come pių ti aggrada.
E' tutto implementato in Python e lo importi come un modulo qualunque.
Consigliato per la gestione di comunicazioni tcp/ip.
Ciiao
py.Re
----- Messaggio inoltrato -----
Da: Matteo Perini <perini.matteo a gmail.com>
A: Discussioni generali sul linguaggio Python <python a lists.python.it>
Inviato: Martedė 21 Agosto 2012 12:47
Oggetto: [Python] controllare risposta tcp/ip
Ciao a tutti,
sapete dirmi come fare a controllare la risposta ottenuta durante una comunicazione client-server?
Cerco di spiegare meglio il mio problema.
ho del codice simile a questo:
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("192.168.1.102",5001))
s.send('comando')
resp = s.recv(1024)
dove 1024 dovrebbe essere il numero di caratteri "letti". giusto?
Quando invio il comando dovrei ottenere una risposta dal server e solitamente č cosė.
Il problema č che la risposta resp che ottengo, in qualche caso, appare troncata.
La risposta deve essere una struttura xml tipo questa:
<server>
<var1>TRUE</var1>
<var2>TRUE</var2>
<var3>FALSE</var3>
<var4>TRUE</var4>
<var5>FALSE</var5>
<var6>55.5</var6>
</server>
Se la struttura non arriva completa non posso fare il parsing dell'xml.
Come posso controllare che la struttura arrivi completa?
Devo controllare le righe iniziale e finale?
Devo svuotare in qualche modo il buffer prima di leggere (non dovrebbe essere pieno!)?
Leggo troppi caratteri?
E' un problema che si verifica solo ogni tanto e non riesco a trovarne una causa.
Il server č windows il client monta linux.
Grazie a chiunque mi indichi qualche possibile strategia per evitare questo fastidioso problema.
Ciao
Buon caldo
Matteo
_______________________________________________
Python mailing list
Python a lists.python.it
http://lists.python.it/mailman/listinfo/python
-------------- parte successiva --------------
Un allegato HTML č stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20120821/711df1ea/attachment.html>
Maggiori informazioni sulla lista
Python