Eliminar caracteres acentuados de la cadena – Python

Obtengo algunos datos de una página web y los leo así en python

origional_doc = urllib2.urlopen(url).read() 

A veces, esta URL tiene caracteres como é and ä and ect. , ¿cómo podría eliminar estos caracteres de la cadena? En este momento, esto es lo que estoy intentando.

 import unicodedata origional_doc = ''.join((c for c in unicodedata.normalize('NFD', origional_doc) if unicodedata.category(c) != 'Mn')) 

Pero me sale un error

 TypeError: must be unicode, not str 

Esto debería funcionar. Se eliminarán todos los personajes que no sean ascii.

  original_doc = (original_doc.decode('unicode_escape').encode('ascii','ignore')) 

usando re puede subvertir todos los caracteres que están en un cierto rango de ascii hexadecimal.

 >>> re.sub('[\x80-\xFF]','','é and ä and ect') ' and and ect' 

También puedes hacer lo inverso y lo que no esté en los 128 caracteres básicos:

 >>> re.sub('[^\x00-\x7F]','','é and ä and ect') ' and and ect'