Foros del Web » Programando para Internet » PHP »

leer contenido web

Estas en el tema de leer contenido web en el foro de PHP en Foros del Web. Hola, entendí y he probado de hecho que para leer el contenido de una pagina web és con Código PHP: <?$homepage  =  file_get_contents ( 'http://URL' ...
  #1 (permalink)  
Antiguo 10/09/2009, 23:15
 
Fecha de Ingreso: septiembre-2008
Mensajes: 211
Antigüedad: 15 años, 7 meses
Puntos: 2
leer contenido web

Hola, entendí y he probado de hecho que para leer el contenido de una pagina web

és con

Código PHP:
<?$homepage file_get_contents('http://URL');?>
Pero no se como hacer para que coja solo el string de dicha url y que pueda saber si existen algunas palabras en concreto supongamos que en una pagina web pone:

"Hay un coche de color rojo en la esquina de esa calle".

Pues que pueda tener una variable: "coche". Y que busque si en dicha web hay "coche" Luego guardaria todo el contenido de esa web dentro de mi base de datos.

Tambien querria saber si en esa web hay direcciones externas para ver dentro de ellas.


Saludos!
  #2 (permalink)  
Antiguo 11/09/2009, 01:06
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: leer contenido web

Mira este ejemplo, aplicalo en este caso a file_get_contents y en vez de hacer un highlight crea una funcion que haga lo que estas pidiendo, con esto ya optienes lo que quieres solo te hace falta crear la funcion

Código PHP:
Ver original
  1. <?php
  2. $body = '<p>Me gusta mucho la programación de PHP.</p>
  3.  
  4. Deseas saber sobre programación de <a href="http://www.forosdelweb.com/f18">PHP</a>.
  5.  
  6. Yo deseo aprender sobre file_get_contents(), cURL y HTTP_Request.
  7.  
  8. <cURL>¡cURL no es una etiqueta de HTML!</cURL>';
  9.  
  10. $words = array('PHP','cURL');
  11. $replacements = array();
  12. foreach ($words as $i => $word) {
  13.     $replacements[] = "<span style='color: #ff0000;'>$word</span>";
  14. }
  15.  
  16. $parts = preg_split("{(<(?:\"[^\"]*\"|'[^']*'|[^'\">])*>)}",
  17.                     $body,
  18.                     -1,
  19.                     PREG_SPLIT_DELIM_CAPTURE);
  20. foreach ($parts as $i => $part) {
  21.     if (isset($part[0]) && ($part[0] == '<')) { continue; }
  22.     $parts[$i] = str_replace($words, $replacements, $part);
  23. }
  24.  
  25. $body = implode('',$parts);
  26. echo $body;
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 11/09/2009, 13:12
 
Fecha de Ingreso: septiembre-2008
Mensajes: 211
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: leer contenido web

Hola abimaelrc muchas gracias por tu respuesta, no entendí muy bien el codigo...

Me podrian explicar por favor que hace exactamente ese codigo? :) La idea és que yo pueda almacenar en unabase de datos todo lo que pueda coger de interès de INTERNET... però la parte que no sé hacer és entrar en un website que segun dicen se hace con: file_get_contents(URL)

Una vez el archivo robot_web.php entra en una pagina web supongamos que és este tema, que lea todo el string, recoja toda la información en el caso de que el texto: "file_get" existiera en el texto y lo guardase.

Después de hacer esto, que recoja las URL's que haya y que entre haciendo lo mismo, i así sucesivamente...

Muchas gracias!
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 09:25.