Ver Mensaje Individual
  #7 (permalink)  
Antiguo 24/03/2012, 12:41
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Obtener datos de otra web

con php podés intentar otra solución, pero asi como con jsonp y simplexml requieren de datos enviados con una estructura determinada, también aquí vas a necesitar de ciertos valores constantes para obtener los datos, pero es bastante más flexible.

Ejemplo
Código PHP:
Ver original
  1. <?php
  2. // Para usar file_get_contents() con url externas es neceario que
  3. // allow_url_fopen y allow_url_include estén habilitados en php.ini
  4.  
  5. // obtenemos el contenido del archivo
  6. $str=file_get_contents("http://emprear.com/");
  7. // buscamos un elemento para construir la expresióm regular que nos permita separar el contenido
  8. // y aplicarlo al preg_split() en este caso el cierre </p>
  9. $claves = preg_split("/\<\/p\>/", "$str");
  10. // el indice 0 de $claves será todo el html hasta el cierre de </p>, excluido
  11. $htmlx = $claves[0];
  12. // De esta forma $htmlx contendra el html previo a <p> + el contenido del <p>
  13. // y al finalizar este contenido estará en blanco
  14. // Volvemos a efectuar el procedimiento pero esta vez con la apertura del <p>
  15. $claves2 = preg_split("/\<p\>/", "$htmlx");
  16. // Como esta vez nos interesa lo que sigue a <p> tomamos el índice 1 de $claves2
  17. $htmlx2 = $claves2[1];
  18. // imprimimos lo que nos queda
  19. echo $htmlx2;
  20. ?>

La página que abrimos en el ejemplo, es muy básica, y es muy fácil también identificar el contenido que queremos extraer, en páginas más complejas, hay que buscar expresiones regulares más finas y a veces realizar la operación mas veces.
También puede ser útil limpiar el contenido previamente utilizando strip_tags().
Bueno, es cuestión de ir probando. Seguramente con curl() también se pueda hacer algo, pero nunca lo probé

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.