Abrir archivo local Funciona con urllib pero no con urllib2

Estoy tratando de abrir un archivo local usando urllib2. ¿Cómo puedo hacer esto? Cuando bash la siguiente línea con urllib:

resp = urllib.urlopen(url) 

Funciona correctamente, pero cuando lo cambio a:

 resp = urllib2.urlopen(url) 

Yo obtengo:

 ValueError: unknown url type: /path/to/file 

donde ese archivo definitivamente sale.

¡Gracias!

Simplemente ponga "file://" delante de la ruta

 >>> import urllib2 >>> urllib2.urlopen("file:///etc/debian_version").read() 'wheezy/sid\n' 

En el método urllib.urlopen: si el parámetro de URL no tiene un identificador de esquema, abrirá un archivo local. pero el urllib2 no se comporta así.

Por lo tanto, el método urllib2 no puede procesarlo.

Siempre es bueno incluir el identificador de esquema ‘file: //’ en la llamada del método para el parámetro url.

Tuve el mismo problema y, de hecho, me di cuenta de que si descarga la fuente de la página y luego la abre en Chrome, su navegador le mostrará la ruta local exacta en la barra url. ¡Buena suerte!