Foros del Web » Programando para Internet » PHP »

Guardar codigo fuente en variable

Estas en el tema de Guardar codigo fuente en variable en el foro de PHP en Foros del Web. Buenas, Mi problema es el siguiente, estoy intentando guardar el codigo fuente de una página web en una varibale para después poder parsearlo, de momento ...
  #1 (permalink)  
Antiguo 14/04/2010, 09:00
 
Fecha de Ingreso: marzo-2010
Ubicación: España
Mensajes: 21
Antigüedad: 14 años, 1 mes
Puntos: 1
Guardar codigo fuente en variable

Buenas,

Mi problema es el siguiente, estoy intentando guardar el codigo fuente de una página web en una varibale para después poder parsearlo, de momento no lo consigo, he intentado con curl, fopen, fgets, fget_content, pero nada... también he probado a poner "view-source" delante de la url, pero lo consigo ver si lo pongo en un iframe, pero no en una variable... ¿alguien tiene alguna idea de como podria hacerlo?

Muchas gracias
  #2 (permalink)  
Antiguo 14/04/2010, 09:17
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Guardar codigo fuente en variable

y se puede saber como lo haces??

porque en realidad es así de sencillo:
Código PHP:
$foo file_get_contents('http://pagina.com'); 
o a cual código fuente te refieres, ¿al de PHP??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 14/04/2010, 14:42
 
Fecha de Ingreso: marzo-2010
Ubicación: España
Mensajes: 21
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Guardar codigo fuente en variable

No no, me refiero al código de la página.

Ya he probado como tu me dices pero me sale otra página. Te explico con más detalle:

tengo una variable $var con una url que me muestra los resultados de una búsqueda en google, es decir, "http://www.google.com/search?....palabra a buscar..." y cuando hago

$foo = file_get_contents($var);
echo $foo;

me sale la página de google en frances... algo muy raro...Al hacer "echo $foo" se supone que tendría que mostrar el código verdad?

Espero haberme explicado.

SAludos
  #4 (permalink)  
Antiguo 14/04/2010, 14:44
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: Guardar codigo fuente en variable

Pero es lo que te regresa!, el código fuente en HTML, por eso al hacer echo, tu navegador lo interpreta como html y por eso lo vez, si quieres ver el html como tal en el browser pasa el resultado por htmlentities para transformarlo o cambia las cabezeras para indicarle al browser que vas a enviar texto.

Saludos.
  #5 (permalink)  
Antiguo 14/04/2010, 16:31
 
Fecha de Ingreso: marzo-2010
Ubicación: España
Mensajes: 21
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Guardar codigo fuente en variable

Cierto,

ya puedo ver el código, pero no puedo ver el HTML con los enlaces de los resultados de google como si lo viera con el firebug, ¿sabeis si hay algun tipo de restricción para esto?

ahora mismo tengo esto

Código PHP:
$foo file_get_contents($web);  
echo 
htmlentities($foo); 
Y si comparo lo que me muestra en pantalla con lo que veo por el firebug, es diferente.

Muchas gracias por vuestras respuestas
  #6 (permalink)  
Antiguo 14/04/2010, 17:15
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 9 meses
Puntos: 70
Respuesta: Guardar codigo fuente en variable

Cita:
Iniciado por tetosan Ver Mensaje
pero no puedo ver el HTML con los enlaces de los resultados de google como si lo viera con el firebug, ¿sabeis si hay algun tipo de restricción para esto?
Pues si te entendí bien, lo que dices es que no te linkean los enlaces... pues es por la propia naturaleza de htmlentities te quita los <a>
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #7 (permalink)  
Antiguo 14/04/2010, 19:01
 
Fecha de Ingreso: marzo-2010
Ubicación: España
Mensajes: 21
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Guardar codigo fuente en variable

no se si es por el htmlentities, pero si es asi me modifica bastantes cosas del HTML, porque con el Firebug puede ver todos los enlaces y demás, pero con el htmlidentities es como si me mostrará lo básico...

¿sabeis si hay alguna otra forma de hacerlo?

Muchas gracias por la ayuda

saludos
  #8 (permalink)  
Antiguo 14/04/2010, 19:17
 
Fecha de Ingreso: diciembre-2009
Mensajes: 612
Antigüedad: 14 años, 4 meses
Puntos: 16
Respuesta: Guardar codigo fuente en variable

con htmlidentities y luego con expresiones poner enlaces o lo que necesites.

No sé si existe algo... No obstante htmliendentities está para eso, para eliminar código html... Tu lo que quieres es eliminar lo que necesitas... No te es más facil probar el firebug?
  #9 (permalink)  
Antiguo 14/04/2010, 19:30
 
Fecha de Ingreso: marzo-2010
Ubicación: España
Mensajes: 21
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Guardar codigo fuente en variable

no no, pero con htmlidentities ya no me sale lo que necesito.

Lo que quiero es guardar el codigo HTML en una variable o en un fichero, para luego poder quedarme con ciertos enlaces. El problema es que esto tiene que ser dinámico, es decir, que cada vez será un página de google con resultados a partir de la cual tengo que sacar los diferentes links. Por lo tanto no lo puedo hacer con firebug porque tiene que estar implementado en mi página.

saludos
  #10 (permalink)  
Antiguo 14/04/2010, 22:28
 
Fecha de Ingreso: marzo-2010
Ubicación: España
Mensajes: 21
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Guardar codigo fuente en variable

He estado buscnado información y por lo que me ha parecido entender, hay sitios como Google que utilizan AJAX para encriptar ese tipo de información, hay alguien que me lo pueda corroborar?

Muchas gracias
  #11 (permalink)  
Antiguo 15/04/2010, 08:51
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: Guardar codigo fuente en variable

Puedes usar en ese caso el API de Google para hacer requests y mostrar los resultados que necesites.

Etiquetas: fuentes, variables
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 01:34.