error urlopen con https y python 2.7 en ubuntu 12.10

Gracias de antemano por cualquier ayuda proporcionada.

Estoy en Ubuntu 12.10 con Python 2.7 instalado. Escribí un script simple basado en otras publicaciones para probar las conexiones http y https:

import urllib2, urllib def set_proxy(): proxy = urllib2.ProxyHandler({'http': 'http://:'}) opener = urllib2.build_opener(proxy, urllib2.HTTPHandler) urllib2.install_opener(opener) def http_call(): conn = urllib2.urlopen('http://www.whatismyip.com/') return conn.read() def https_call(): conn = urllib2.urlopen('https://chase.com/') return conn.read() set_proxy() webpage = open('webpage.html', 'w') return_str = https_call() webpage.write(return_str) webpage.close() print ("check for output in webpage.html") 

La prueba con http funciona bien, pero con https produce el siguiente resultado:

 Traceback (most recent call last): File "test.py", line 18, in  return_str = https_call() File "test.py", line 13, in https_call conn = urllib2.urlopen('https://chase.com/') File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen return _opener.open(url, data, timeout) File "/usr/lib/python2.7/urllib2.py", line 401, in open response = self._open(req, data) File "/usr/lib/python2.7/urllib2.py", line 419, in _open '_open', req) File "/usr/lib/python2.7/urllib2.py", line 379, in _call_chain result = func(*args) File "/usr/lib/python2.7/urllib2.py", line 1219, in https_open return self.do_open(httplib.HTTPSConnection, req) File "/usr/lib/python2.7/urllib2.py", line 1181, in do_open raise URLError(err) urllib2.URLError:  

He aquí mi arreglo:

 root@sc11137376:/usr/local/pythonbrew# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.10 Release: 12.10 Codename: quantal root@sc11137376:/usr/local/pythonbrew# python --version Python 2.7.3 root@sc11137376:/usr/local/pythonbrew# openssl version OpenSSL 1.0.1c 10 May 2012 

Vi en un post anterior, sugerencias similares para reconstruir Python desde la fuente con openssl instalado. Espero que haya una solución diferente para mi problema, ya que esta es una versión mucho más nueva de Ubuntu / Python y openssl ya está en el sistema.

Cualquier puntero apreciado.

Nota: la configuración de HTTPS_PROXY en el entorno cambió el mensaje de error a lo siguiente (del número de error 110 a 113):

 urllib2.URLError:  

Por cierto, lo siguiente también falla:

 root@sc11137376:/usr/local/pythonbrew# openssl s_client -connect encrypted.google.com:443 connect: No route to host connect:errno=113 

No estoy seguro de si hay algo que pueda hacer para resolver este problema.

URLError: error urlopen [Errno 113] No hay ruta al host

Tuve el mismo tipo de error: quería ejecutar algunas secuencias de comandos de forma remota en la máquina B desde la máquina A (que hace algunas tareas de automatización del navegador) y finalmente tuve el error como se indicó más adelante. Deshabilité la configuración del firewall para el HTTPS.

¿Cómo deshabilité la configuración de muro de fuego en RHEL6.4? – haga clic en configuración (en el lado izquierdo del panel)> Administración> Cortafuegos> en la ventana “Configuración del cortafuegos”: marque “WWW seguro (HTTPS)” – (debe ser usuario root) >> haga clic en “Aplicar” >> haga clic el botón de desactivación.

Más tarde, pude ejecutar los scripts en la máquina B remota sin ningún problema.