Problema leyendo bytes deun fichero remoto

Joan Carles Jimenez jjcarles en terra.es
Jue Mayo 17 18:46:32 CEST 2007


Hola de nuevo.

	Supongo que el "read" va leyendo hasta llegar al límite especifcado o hasta 
encontrar un final de fichero. Pero diria que en mi caso el problema está en 
que no llego al límite y tampoco recibo el final de fichero. Por poner un 
ejemplo:

	import urllib2
	f = urllib2.urlopen('http://www.python.org/')
	print f.read(100)

	Si se corta la comunicación antes de llegar a los 100 bytes, el print nunca 
se ejecuta. Por eso queria saber si se puede asignar de alguna manera un 
timeout para que mi función no se cuelgue.

Gracias.

On Wednesday 16 May 2007 19:44, tny wrote:
> El mié, 16-05-2007 a las 18:13 +0200, Joan Carles Jimenez escribió:
> > Hola.
> >
> > 	Tengo una función que se encarga de leer bloques de 100 bytes de un
> > fichero que se encuentra en una máquina remota. El proceso analiza estos
> > 100 bytes y si obtengo los resultados que deseo, no continuo la descarga,
> > en caso contrario, descargo los siguientes 100 bytes. El hecho de que
> > vaya analizando el fichero en bloques me impide saber el tamaño total de
> > este.
> >
> > 	La intrucción que utilizo para leer los bytes es "xxxx.read(100)". El
> > problema que tengo es que si el ultimo bloque no tiene 100 bytes, el read
> > se queda esperando, y como no hay mas datos para descargar, el proceso se
> > queda parado. ¿Existe alguna manera de asignar un timeout al read() de
> > tal forma que finalize la espera aunque no tenga los 100 bytes
> > descargados?
> >
> > Gracias.
>
> ???
> Yo no tengo ese problema...
> Lee lo que "haiga" hasta esa cantidad, si hay menos no se me queda
> esperando...
> Mira a ver si es otra cosa.

-- 
Joan Carles Jimenez
jjcarles en terra.es
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es