tiempo de espera de urllib2

Estoy usando la biblioteca urllib2 para mi código, estoy usando una gran cantidad de (urlopen) EDIT: loadurl

Tengo un problema en mi red, cuando estoy explorando sitios, a veces mi navegador se atasca en “Conectar” a un sitio web determinado y, a veces, mi navegador devuelve un tiempo de espera

Mi pregunta es si si uso urllib2 en mi código, se puede agotar el tiempo de espera cuando bash conectarme por un tiempo determinado a un determinado sitio web o el código quedará bloqueado en esa línea.

¿Sé que urllib2 puede manejar los tiempos de espera sin especificarlo en el código pero puede aplicar para este tipo de situación?

Gracias por tu tiempo

EDITAR:

def checker(self) try: html = self.loadurl("MY URL HERE") if self.ip_ != html: (...) except Exeption, error: html = "bad" 

de mi pequeña investigación, la función urllib2.urlopen() se agrega en Python 2.6

por lo tanto, el problema del tiempo de espera debe resolverse enviando un tiempo de espera personalizado a la función urllib2.urlopen . el código debería verse así;

response = urllib2.urlopen( "---insert url here---", None, your-timeout-value)

el parámetro su your-timeout-value es un parámetro opcional que define el tiempo de espera en segundos.

EDITAR: Según su comentario, entendí que no necesita el código para esperar demasiado tiempo, entonces debería tener el siguiente código para no quedarse atascado;

 import socket import urllib2 socket.setdefaulttimeout(10) 

10 se puede cambiar de acuerdo con una fórmula matemática relacionada con la velocidad de conexión y el tiempo de carga del sitio web.