Foros del Web » Programando para Internet » PHP »

spider en php ayuda?

Estas en el tema de spider en php ayuda? en el foro de PHP en Foros del Web. Estoy tratando de hacer un spider en php, pero ya me trabe miren el codigo que tengo hasta ahorita. <?php $url='http://www.cualquierpagina.com'; $lines = file($url); $salida=''; ...
  #1 (permalink)  
Antiguo 19/12/2009, 11:19
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Pregunta spider en php ayuda?

Estoy tratando de hacer un spider en php, pero ya me trabe miren el codigo que tengo hasta ahorita.

<?php
$url='http://www.cualquierpagina.com';
$lines = file($url);
$salida='';
foreach ($lines as $line_num => $line)
{$salida.=nl2br(htmlspecialchars($line));}
print "$salida";
?>

si imprimo la variable salida me muestra el codigo fuente lo que quiero hacer es almacenar el titulo, descripcion y todos los enlaces que contenga el codigo fuente para hacer de nuevo todo con una url encontrada en codigo fuente y guardarlo en la BD de MySQL.

espero me puedan ayudar.

Saludos.
  #2 (permalink)  
Antiguo 19/12/2009, 11:59
 
Fecha de Ingreso: diciembre-2008
Mensajes: 27
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: spider en php ayuda?

Lo puedes hacer con file_get_contents vas a optener solo algunos datos de la pagina usando expresiones regulares.
  #3 (permalink)  
Antiguo 19/12/2009, 12:27
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: spider en php ayuda?

Cita:
Iniciado por sistemasmen Ver Mensaje
Lo puedes hacer con file_get_contents vas a optener solo algunos datos de la pagina usando expresiones regulares.

Gracias amigo, pero esta funcion hace casi lo mismo, ya pude sacar la descripcion y varias metatags, lo que tambien me interesa sacar con esta clase de funciones es el titulo pero no por metatag , por <title></title> y todos los enlaces dentro de la pagina.

<?php

$tags = get_meta_tags('http://www.ejemplo.com');

//$tags['title']; //lo tengo como comentario por quela mayoria utiliza <title></title>
$autor = $tags['author'];
$clave = $tags['keywords'];
$descripcion = $tags['description'];

echo "
$autor<br />
$descripcion<br />
";

// Si tiene posicion geografica es = $position = $tags['geo_position'];
?>


Saludos
  #4 (permalink)  
Antiguo 19/12/2009, 12:56
Avatar de Vitesse92  
Fecha de Ingreso: diciembre-2009
Ubicación: Internet
Mensajes: 145
Antigüedad: 14 años, 4 meses
Puntos: 5
Respuesta: spider en php ayuda?

no entiendo realmente como es que sacas los metatags :S
  #5 (permalink)  
Antiguo 21/12/2009, 08:21
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: spider en php ayuda?

tan solo una vez que tienes la pagina debes separar el contenido que deseas con las funciones de preg_match y preg_match_all para eso debes tener conocimientos de expresiones regulares

saludos
  #6 (permalink)  
Antiguo 21/12/2009, 11:36
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: spider en php ayuda?

Cita:
Iniciado por Adell Ver Mensaje
tan solo una vez que tienes la pagina debes separar el contenido que deseas con las funciones de preg_match y preg_match_all para eso debes tener conocimientos de expresiones regulares

saludos
Gracias Adell esas funciones me fueron de ayuda, a lo que entendi de ellas es un array por ejemplo echo "$matches[0]";
imprime el nombre del dominio, pero para imprimir todos los enlaces, como se imprimiera la variable de los enlaces no sabes?

Saludos
  #7 (permalink)  
Antiguo 21/12/2009, 11:43
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: spider en php ayuda?

matches[0] guarda la cadena original, luego de matches[1] en adelante va guardando cada uno de los enlaces en este caso que va encontrando, tan solo te bastaria con hacer un foreach para recorrer cada uno los datos del array y asi almacenarlos en la base de datos

saludos
  #8 (permalink)  
Antiguo 21/12/2009, 13:35
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: spider en php ayuda?

Cita:
Iniciado por Adell Ver Mensaje
matches[0] guarda la cadena original, luego de matches[1] en adelante va guardando cada uno de los enlaces en este caso que va encontrando, tan solo te bastaria con hacer un foreach para recorrer cada uno los datos del array y asi almacenarlos en la base de datos

saludos
OK ya entendi lo que me tratas de decir, ya solo me falta como sacar el titulo pero de las etiquetas <title>Ejemplo de titulo</title>.


Porque con lo que tengo solo saca de la etiquetas <meta>

Gracias por la ayuda Adell

Saludos
  #9 (permalink)  
Antiguo 21/12/2009, 14:59
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: spider en php ayuda?

en cuanto a la etiqueta title es lo mismo que con los enlaces, en el patron del preg_match tan solo debes buscar el patron que contenga las etiquetas title

saludos
  #10 (permalink)  
Antiguo 22/12/2009, 16:25
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 4 meses
Puntos: 10
Respuesta: spider en php ayuda?

Cita:
Iniciado por Adell Ver Mensaje
en cuanto a la etiqueta title es lo mismo que con los enlaces, en el patron del preg_match tan solo debes buscar el patron que contenga las etiquetas title

saludos

ok Adell muchas gracias por la informacion.

Saludos
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 11:19.