Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problemas con caracteres acentuados y UTF-8 en scraping

Estas en el tema de Problemas con caracteres acentuados y UTF-8 en scraping en el foro de PHP en Foros del Web. Estoy realizando scraping a una web que no esta en UTF-8 y contiene letras con tildes, el texto necesito tratarlo pero funciones como str_replace no ...
  #1 (permalink)  
Antiguo 22/06/2013, 18:37
Avatar de jhg
jhg
 
Fecha de Ingreso: marzo-2012
Mensajes: 96
Antigüedad: 12 años, 1 mes
Puntos: 1
Problemas con caracteres acentuados y UTF-8 en scraping

Estoy realizando scraping a una web que no esta en UTF-8 y contiene letras con tildes, el texto necesito tratarlo pero funciones como str_replace no comparan bien los caracteres acentuados, intento usar utf8_encode para convertir la cadena a UTF-8 pero entonces aparte de seguir sin poder usar str_replaace encima se visualiza mal en la web. ¿Hay alguna forma de solucionarlo?
__________________
JHG
  #2 (permalink)  
Antiguo 23/06/2013, 01:10
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: Problemas con caracteres acentuados y UTF-8 en scraping

http://www.php.net/manual/es/functio...t-encoding.php
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 23/06/2013, 07:22
Avatar de jhg
jhg
 
Fecha de Ingreso: marzo-2012
Mensajes: 96
Antigüedad: 12 años, 1 mes
Puntos: 1
Respuesta: Problemas con caracteres acentuados y UTF-8 en scraping

Me parecia demasiado obvio decir que ya he estado navegando por el manual en linea de PHP

Aparte de eso, no quiero cambiar ni la codificacion de mi web, ni del servidor, ni de php, etc, etc; yo trabajo con UTF-8 unicamente algunas web a las que hago scraping no han seguido las buenas practicas de también usarlo y de ahí el problema, e incluso intentando cambiarles la códificación al vuelo a UTF-8 a esas webs en concreto resulta en una mala visualización, en espacial cuando usan caracteres extraños como comullas diferentes de la comilla simple o la doble, etc.
__________________
JHG
  #4 (permalink)  
Antiguo 23/06/2013, 08:08
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problemas con caracteres acentuados y UTF-8 en scraping

No necesariamente tiene que ser UTF8, debes de siempre hacerlo con el encoding que tengas, si la web ya esta en ISO, no tienes porque cambiar el encoding a UTF8, simplemente guarda los archivos PHP en ISO y no debes de tener problemas.
  #5 (permalink)  
Antiguo 23/06/2013, 10:04
Avatar de jhg
jhg
 
Fecha de Ingreso: marzo-2012
Mensajes: 96
Antigüedad: 12 años, 1 mes
Puntos: 1
Respuesta: Problemas con caracteres acentuados y UTF-8 en scraping

Cita:
Iniciado por GatorV Ver Mensaje
No necesariamente tiene que ser UTF8, debes de siempre hacerlo con el encoding que tengas, si la web ya esta en ISO, no tienes porque cambiar el encoding a UTF8, simplemente guarda los archivos PHP en ISO y no debes de tener problemas.
UTF-8 se creo precisamente para solucionar problemas, en especial de internacionalización, que no podia resolver ISO, por lo tanto todo deberia usar UTF-8 u otro unicode, practicamente todos los sistemas modernos se han modernizando pasando a codificación UTF-8 y es la recomendada por todos desde las organizaciones de estandares hasta cualquier desarrollador con dos dedos de frente. El problema no esta en mi web, sino en las web a las que hago scraping, unas son modernas y estan en UTF-8 y otras son las tipicas que hace el primo del sobrino del enchufado de turno que en ocasiones incluso estan en HTML estatico con HTML viejo anterior incluso al 4, y que ni sabe que los estandares web han evolucionado mucho desde 1995 hasta hoy en día.

De todos modos ya encontre como solucionarlo, como pasar las cadenas ISO a UTF-8 no me daba buen resultado hice la inversa, para trabajar sobre cadenas ISO paso la cadena UTF-8 a ISO, opero de esa forma y luego vuelvo a pasar a UTF-8 el resultado y así si funciona.
__________________
JHG
  #6 (permalink)  
Antiguo 23/06/2013, 18:37
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problemas con caracteres acentuados y UTF-8 en scraping

Claro obviamente UTF-8 es "mejor" en algunos casos, todo depende de para que, si no no existiría ISO. Ahora tú comentaste que no podías hacer cambios por eso mi recomendación de usar ISO, no es para que te pongas en ese plan.

Solo demuestra ignorancia si crees que uno es mejor que el otro, cada uno tiene una razón de la cual para que es usado, no puedes asumir directamente como lo estas haciendo.

Saludos.

Etiquetas: 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 20:06.