2010-09-15 9 views

Respuesta

7

Es un límite bien conocido de urllib2 (y urllib también). En mi humilde opinión, el mejor intento hasta ahora para arreglarlo y hacerlo bien es Garry Bodsworth's coda_network para Python 2.6 o 2.7 - reemplazo, versiones parcheadas de urllib2 (y algunos otros módulos) para mantener keep-alive (y un montón de otros más pequeños pero bastante bienvenida arreglos).

+0

Alex, finalmente una respuesta directa sobre este ('es' un límite bien conocido '), La pregunta sigue siendo sin embargo, ¿por qué es URLLib2 escrito de esta manera? – sbartell

+1

@sbartell, porque nadie creía que el problema fuera lo suficientemente importante como para enviar un parche al código de Python y hacer que lo aceptaran. No lo hice, ni tú, ni así sucesivamente, para millones de personas que podrían y sin duda lo harían ** si ** sintieron que el problema era importante (asumiendo que son ciudadanos decentes de la comunidad de código abierto, por supuesto, pero, oye, ¿no somos todos? -). Creo que Gary tomó el enfoque correcto al lanzar una solución de terceros para que se puedan acumular muchas experiencias reales de "campo" en una variedad de usos antes de que las cosas se "congelen" en la biblioteca estándar. –

3

También puede consultar httplib2, que admite conexiones persistentes. No es exactamente lo mismo que urllib2 (en el sentido de que solo hace http y no "cualquier tipo de url"), pero es más fácil que httplib (y también es más fácil que urllib2 si realmente quieres hacer http).

+0

httplib los admite, solo usamos el mismo objeto httpconnection otra vez. – sbartell

+0

Simplemente me fastidia por qué urllib2 admite esto. – sbartell

Cuestiones relacionadas