Foros del Web » Programando para Internet » Python »

Beautifulsoup y UTF-8

Estas en el tema de Beautifulsoup y UTF-8 en el foro de Python en Foros del Web. Hola a todos. Estoy trabajando con Beautifulsoup y no consigo hacer que me codifique el texto a UTF-8, siempre me aparecen carácteres extraños. Aquí un ...
  #1 (permalink)  
Antiguo 04/05/2011, 04:25
Avatar de Sergiorelativo  
Fecha de Ingreso: diciembre-2009
Ubicación: Cadiz
Mensajes: 259
Antigüedad: 14 años, 4 meses
Puntos: 6
Beautifulsoup y UTF-8

Hola a todos. Estoy trabajando con Beautifulsoup y no consigo hacer que me codifique el texto a UTF-8, siempre me aparecen carácteres extraños. Aquí un ejemplo de lo que estoy haciendo:

Código:
# Obtenemos el HTML de la pagina
sHtml = self.curl( 'http://www.paginawebdeejemplo.com/' )

# Si pintamos el HTML aparece todo correcto
print sHtml

# Parseamos el HTML
aSoup = BeautifulSoup( sHtml )

# Si pintamos esto nos aparece mal
print aSoup
Por lo tanto si hago un aSoup.find... lo que sea, me aparece con mala codificación y no se como solucionarlo.

Un millón de gracias y espero que podáis iluminarme con vuestra sabiduría.
  #2 (permalink)  
Antiguo 04/05/2011, 07:11
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Beautifulsoup y UTF-8

Pasa la url real.
¿Por cierto no te tira ningún error?
¿Has intentado imprimir con print aSoup.prettify()?

Edito:
(Ejemplo con lxml)
Código Python:
Ver original
  1. import urllib
  2. from lxml import etree
  3.  
  4. f = urllib.urlopen("http://www.google.com")
  5. data = f.read()
  6. f.close()
  7.  
  8. root = etree.HTML(data)
  9. print etree.tostring(root, pretty_print=True)
  #3 (permalink)  
Antiguo 06/05/2011, 07:50
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Beautifulsoup y UTF-8

¿No será tu consola la que no admite los caracteres codificados con UTF-8?

Danos una captura de pantalla para ver el asunto correctamente.


saludos.

Etiquetas: beautifulsoup, utf-8
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:15.