Hola.
Disculpa mi torpeza dontexplain pero he probado el siguiente código y el resultado es el mismo.
Código:
import urllib2
from urllib2 import HTTPError, URLError
try:
archivo = urllib2.urlopen("http://ma40.zxq.net/inexistente.txt")
except (HTTPError, URLError):
print """ERROR"""
else:
if archivo.getcode() in [301,302,304]:
print "error"
else:
print "ok"
Un saludo.