elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:09  


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales

+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP
| | | |-+  Extrayendo código fuente de una web (Problema con código generado por JS)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Extrayendo código fuente de una web (Problema con código generado por JS)  (Leído 2,112 veces)
Littl3

Desconectado Desconectado

Mensajes: 224


Tarde o temprano aparece el hombre


Ver Perfil
Extrayendo código fuente de una web (Problema con código generado por JS)
« en: 2 Marzo 2011, 18:25 »

Buenas tardes,

He creado un script en php que me extrae cierto contenido del codigo fuente de cierta web..  :-X

Extraigo el código fuente con Fopen y luego lo voy tratando con funciones de string.
Código
$fo= fopen("$url","r") ; //obtengo el codigo fuente
 
while (!feof($fo))  //Leo linea por linea hasta el final
               {
   $fuente .= fgets($fo, 4096);
}
 

Bien, pues resulta que llegando al paso final del script me doy cuenta de que hay una parte del contenido web que no esta en el código fuente, o mejor dicho esta cifrado y se muestra mediante javascript, no he localizado la función que realiza esto pero me imagino que lo muestra mediante javascript ya que en el codigo fuente no aparece este contenido.

Mi pregunta es la siguiente, como puede recoger este contenido mediante php?
¿Hay alguna manera de obtener el código generado por javascript desde php?

¿Alguien se ha encontrado con un problema parecido y me puede guiar un poco para resolverlo?

Gracias, un saludo.


En línea

Feedeex

Desconectado Desconectado

Mensajes: 172


Ver Perfil
Re: Extrayendo código fuente de una web (Problema con código generado por JS)
« Respuesta #1 en: 2 Marzo 2011, 18:28 »

Los códigos de HTML y Js te los tiene que devolver si o sí, ya que ambos son del lado del cliente. Lo único que nunca podrás tener es el PHP porque se maneja por el servidor.

Por cierto, en firefox o alguno click derecho -> Ver código fuente y verás que el código en js se visualiza, es decir, que si no me muestras tu code no se que decir xD.



En línea
Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: Extrayendo código fuente de una web (Problema con código generado por JS)
« Respuesta #2 en: 2 Marzo 2011, 19:32 »

Hay una función de WHK que permite hacer eso. La modifique porque también la necesitaba.
Código
function fromTo($sFrom, $sTo, $sContent){
 # Start Script

 #  Created by: WHK
 # Modified by: Shell Root
 # Description: It can extract the contents from one part to another

 if(preg_match($sFrom ,$sContent)){
   $sReturn = explode($sFrom, $sContent);
   foreach($sReturn as $sCompare){
     $sCompare = explode($sTo, $sCompare);
     if($sCompare = $sCompare[0]){ $sBack[] = $sCompare; }
     unset($sCompare);
   }
   return $sBack[1];
 }else{ return false; }
 
 # End Script
}
 
$sWeb = file_get_contents("http://127.0.0.1/PoC/PoC.html");
$sWeb = fromTo("<script languaje='javascript'>", "</script>", $sWeb);
print( $sWeb );


Contenido PoC.html:
Código
<html>
 <head>
   <script languaje='javascript'>
     function sAlert(){ alert('PoC Loading'); }
     function sWrite(){ document.write('PoC'); }
   </script>
 </head>
<body onLoad='sAlert();'>
 <h1> PoC </h1>
</body>
</html>

Resultado:
Código
alex@shellroot:~/Escritorio$ php PoC.php
     function sAlert(){ alert('PoC Loading'); }
     function sWrite(){ document.write('PoC'); }
 
En línea

---
Littl3

Desconectado Desconectado

Mensajes: 224


Tarde o temprano aparece el hombre


Ver Perfil
Re: Extrayendo código fuente de una web (Problema con código generado por JS)
« Respuesta #3 en: 2 Marzo 2011, 22:41 »

Grscias WHK, ¿podrias comentar un poco el funcionamiento de la función?

Un saludo.
En línea

Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.334

he vuelto :)


Ver Perfil WWW
Re: Extrayendo código fuente de una web (Problema con código generado por JS)
« Respuesta #4 en: 3 Marzo 2011, 04:13 »

la funcion recibe 3 parametros

desde donde extraer
hasta donde extraer (puede ser entre 2 tags)
el texto del cual extraer
En línea

Ojo por ojo, y el mundo acabará ciego.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines