Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Matteo Perini
Grazie a tutti delle risposte. Provo a sondare un po le alternative e poi mi rifarò sentire sicuramente per dei consigli. Ciao Matteo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Matteo Perini
Ciao, rieccomi. Sto risolvendo abbastanza bene con un codice tipo questo (semplifico un po' per brevità): s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.connect(("192.168.1.100",5001)) s.send('comando') r="" i=0 while True: resp = s.recv(1) r=r+str(resp) if r[-10:]=="\r\n":

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Andrea Francia
2012/8/22 Matteo Perini > PS: c'è un modo di fare il print dei caratteri di escape (tipo \r\n)? > Vorrei riuscire a fare una cosa del genere: > >>>print "ciao\n" > ciao\n > Credo: print repr("ciao\n") In generale repr funziona su tutti gli oggetti (e altri tipi), non solo le stringhe. Sugli

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Marco De Paoli
Il giorno 22 agosto 2012 15:07, Matteo Perini ha scritto: > resp = s.recv(1) > perché non metti un valore più alto di 1? probabilmente nel tuo caso (in cui mi pare che scambi piccoli comandi di testo) la cosa è ininfluente però attenzione, perché un buffer così piccolo può risultare di una l

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Matteo Perini
Credo: print repr("ciao\n") In generale repr funziona su tutti gli oggetti (e altri tipi), non solo le stringhe. Sugli oggetti funziona solo se hai definito __repr__ (vedi la documentazione per approfondimenti). A me viene molto comoda per il debug e per i test di caratterizzazione quando

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Andrea Francia
2012/8/22 Matteo Perini > s = socket.socket(socket.AF_INET,**socket.SOCK_STREAM) > s.connect(("192.168.1.100",**5001)) > s.send('comando') > > r="" > i=0 > while True: > resp = s.recv(1) > r=r+str(resp) > if r[-10:]=="\r\n": > break > Non mi convince molto il fatto che smetti

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Matteo Perini
Il 22/08/2012 15:19, Marco De Paoli ha scritto: Il giorno 22 agosto 2012 15:07, Matteo Perini > ha scritto: resp = s.recv(1) perché non metti un valore più alto di 1? probabilmente nel tuo caso (in cui mi pare che scambi piccoli comandi di testo) la

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Matteo Perini
if r[-10:]=="\r\n": break Non mi convince molto il fatto che smetti di ricevere quando ricevi "\r\n" Se non dico stupidate (e potrei) stai usando una informazione a livello di applicazione (application layer) per controllare una cosa che é a livello di trasporto. La cosa

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Marco De Paoli
Il giorno 22 agosto 2012 15:58, Matteo Perini ha scritto: > Mi piacerebbe però molto capire come mai la resp viene troncata in modo > selvaggio e apparentemente senza nessuna spiegazione. > secondo me è corretto che tu faccia il ciclo di lettura perché i livelli di rete sottostanti potrebbero i

Re: [Python] controllare risposta tcp/ip

2012-08-22 Per discussione Manlio Perillo
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Il 22/08/2012 15:07, Matteo Perini ha scritto: > Ciao, > rieccomi. > Sto risolvendo abbastanza bene con un codice tipo questo (semplifico un > po' per brevità): > > s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) > s.connect(("192.168.1.100",5001