elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Obtener informacion de una pagina con php
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Obtener informacion de una pagina con php  (Leído 3,355 veces)
MaximAlekz

Desconectado Desconectado

Mensajes: 8



Ver Perfil WWW
Obtener informacion de una pagina con php
« en: 10 Enero 2016, 07:30 am »

Hola, buen día.

Tengo mi buscador, uno tipo google. Pero no es para buscar en toda la internet. Sólo local. Tengo una pagina de prueba con texto.
Ambas en el hosting claro está.

Lo que quiero es, que al registrar la URL de la pagina de prueba en mi base de datos, mi buscador analice dicha pagina y me muestre si hay alguna coincidencia o similitud con la palabra que estoy buscando, también que encontrara alguna imagen por medio de su "name" o "alt". Necesito varios casos para tener un buscador más completo.

Me sería de gran ayuda que pudieran ayudarme  ;D
Gracias.


En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.820



Ver Perfil WWW
Re: Obtener informacion de una pagina con php
« Respuesta #1 en: 12 Enero 2016, 14:54 pm »

Sin codigo ni mas detalles es imposible ayudarte. Lo que pides no es precisamente algo "simple".

Saludos


En línea

MaximAlekz

Desconectado Desconectado

Mensajes: 8



Ver Perfil WWW
Re: Obtener informacion de una pagina con php
« Respuesta #2 en: 12 Enero 2016, 22:39 pm »

Bueno, es por eso que he venido a este foro. Este foro no es para cosas "sencillas". Gracias por responder
En línea

MaximAlekz

Desconectado Desconectado

Mensajes: 8



Ver Perfil WWW
Re: Obtener informacion de una pagina con php
« Respuesta #3 en: 12 Enero 2016, 22:44 pm »

Ahora bien, aquí está mi código.
Index.php


Código
  1. <?php
  2. require_once 'Conexion.php';
  3. @$Buscar = $_GET['Buscar'];
  4. ?>
  5. <html>
  6.    <head>
  7.        <title><?php echo $Buscar; ?> - M&aacute;xima S</title>
  8.        <link rel="stylesheet" type="text/css" href="css/stail.css">
  9.    </head>
  10. <body>
  11. <form method="GET" action="">
  12. <table>
  13. <tr>
  14.    <td><h1 id="engine"><a href="index.php">M&aacute;xima Search</a></h1></td>
  15. </tr>
  16. <tr>
  17.   <td><div id="searchbox"><input autocomplete="off" id="search" type="text" name="Buscar" placeholder="Qu&eacute; quieres buscar" value="<?php echo $Buscar; ?>" /></div></td>
  18. </tr>
  19. </table>
  20. <div id="total-result-search">
  21.    <table border="0" width="600px">
  22.  
  23.            <?php
  24.            if($Buscar == NULL)
  25.            {
  26.                echo "<tr><td><div id='subindice-searchbox'>Ingrese una palabra o frase en el cuadro de b&uacute;squeda</div></td></tr>";
  27.            }else{
  28.            $Busqueda = "SELECT * FROM paginas WHERE Nombre LIKE '%$Buscar%' OR NombreCarEspecial LIKE '%$Buscar%' OR URL LIKE '%$Buscar%' OR Descripcion LIKE '%$Buscar%' ";
  29.            $Resultado = mysql_query($Busqueda);
  30.            $Numero_De_Resultados = @mysql_num_rows($Resultado);
  31.            echo "<tr><td><div id='subindice-searchbox'>Resultados de la busqueda</div></td></tr>";
  32.            echo "<br />";
  33.                 if ($Numero_De_Resultados < 1)
  34.                    {
  35.                       echo "<tr><td><div id='subindice-searchbox'>Sin resultados</div></td></tr>";
  36.                    }
  37.                        elseif($Numero_De_Resultados == 1)
  38.                         {
  39.                            echo "<tr><td><div id='subindice-searchbox'>Solo un resultado</div></td></tr>";
  40.                            echo "<br /><br />";
  41.                            $Inicio = 0;
  42.                        }
  43.                        elseif($Numero_De_Resultados > 1)
  44.                        {
  45.                            echo "<tr><td><div id='subindice-searchbox'>Varios resultados = ".$Numero_De_Resultados."</div></td></tr>";
  46.                            echo "<br /><br />";
  47.                            $Inicio = 0;
  48.                        }
  49.                        else
  50.                        {
  51.                            echo "Error";
  52.                        }
  53.            }
  54.  
  55.            while (($Fila = @mysql_fetch_array($Resultado)) && ($Inicio < 10))
  56.            {
  57.                $Nombre = $Fila['Nombre'];
  58.                $URL = $Fila['URL'];
  59.                $Descripcion = $Fila['Descripcion'];
  60.  
  61.                echo "<tr><td><a id='nombrepagina-search' href='$URL'>".$Nombre."<a></td></tr>";
  62.                echo "<tr><td><div id='descripcionpagina1-search'>".$URL."</div></td></tr>";
  63.                echo "<tr><td><div id='descripcionpagina2-search'>".$Descripcion."</div></td></tr>";
  64.                echo "<tr><td><hr id='linea-separa-search'></hr></td></tr>";
  65.                $Inicio++;
  66.            }
  67.  
  68.            ?>
  69.    </tr>
  70.    </table>
  71.    </div>
  72. </form>
  73. </body>
  74. </html>

Agregar.php - Para agregar más resultados a mi base de datos, y que así sean captados por mi buscador.

Código
  1. <?php
  2. require_once 'Conexion.php';
  3. @$Nombre_web = $_POST['Nombre'];
  4. @$URL_web = $_POST['URL'];
  5. @$Descripcion_web = $_POST['Descripcion'];
  6. @$NameEspecial = $_POST['NombreCarEspecial'];
  7. if($_POST)
  8. {
  9.   if($Nombre_web == "")
  10.   {
  11.       echo "No has ingresado el <b>nombre</b> de la pagina web a agregar";
  12.   }
  13.   elseif($URL_web == "")
  14.   {
  15.       echo "<br />No has ingresado la <b>URL</b> de la pagina web a agregar";
  16.   }
  17.   elseif($Descripcion_web == "")
  18.   {
  19.       echo "<br />No has ingresado la <b>descripcion</b> de la pagina web a agregar";
  20.   }
  21.  else
  22.  {
  23.   $Guardando = "INSERT INTO paginas (Nombre, NombreCarEspecial, Descripcion, URL) ".
  24.     "VALUES ('".$_POST['Nombre']."', '".$_POST['NombreCarEspecial']."', '".$_POST['Descripcion']."', '".$_POST['URL']."')";
  25.  
  26.   mysql_query($Guardando);
  27.   echo 'Listo, amigo m&iacute;o<br />';
  28.   echo '<a href="index.php">Volver</a> a al buscador y comprobar la busqueda';
  29.   exit();}}
  30. ?>
  31. <html>
  32.    <body>  
  33.    <head>
  34.        <title>Agregar paginas web</title>
  35.    </head>
  36. <form method="POST" action="">
  37. <h1>Agregar resultados a Máxima Search</h1>
  38.    <input id="nombrepag-alt" type="text" placeholder="Nombre de la p&aacute;gina" name="Nombre" value="<?php echo $Nombre_web; ?>">
  39.    <input id="caracterespecial-alt" type="text" placeholder="Caracteres especiales" name="NombreCarEspecial" value="<?php echo $NameEspecial; ?>">
  40.    <br />
  41.    <label>URL:</label>
  42.    <br />
  43.    <input type="text" name="URL" value="<?php echo "http://".$URL_web; ?>">
  44.    <br />
  45.    <label>Descripcion:</label>
  46.    <br />
  47.    <textarea name="Descripcion"><?php echo $Descripcion_web; ?></textarea>
  48.    <br />
  49.    <input type="submit" value="Registrar pagina web" />
  50.  
  51. </form>
  52.    </body>
  53.    </html>

Por último el archivo que realiza la conexión - conexión.php

Código
  1. <?php
  2. $Conexion = mysql_connect('localhost', 'root', '') or die("No se pudo conectar con el servidor");
  3. mysql_select_db('buscador', $Conexion) or die ("No se pudo seleccionar a la base de datos");
  4. ?>
En línea

LuffyFF


Desconectado Desconectado

Mensajes: 754


Final Fantasy XIII


Ver Perfil WWW
Re: Obtener informacion de una pagina con php
« Respuesta #4 en: 13 Enero 2016, 01:50 am »

Lo que quieres se llama "scraping".

Pero al ser un entorno local y usar una base de datos, puedes programar las similitudes usando la base de datos, sin necesidad de scrapear la página.

Ahora si quieres scrappear la página, lo que tienes que hacer con PHP, es abrir la URL, guardarla en una variable, y luego analizar el html o contenido de la variable. Y aplicar distintas funciones de PHP para filtrar.

Si quieres facilitar las cosas puedes usar la clase Snoopy (para scrapear).

Igual, te recomiendo usar la base de datos y manipular la data desde ahí.

Saludos
En línea

xiruko


Desconectado Desconectado

Mensajes: 437


Ver Perfil
Re: Obtener informacion de una pagina con php
« Respuesta #5 en: 13 Enero 2016, 03:33 am »

Hola, si estás haciendo este buscador por el mero hecho de aprender entonces ya te han comentado algunas soluciones. Ahora bien, si lo que quieres es añadir esa funcionalidad a tu página con las menores complicaciones posibles, por qué no personalizas un buscador de Google para que solo busque en tu dominio y lo metes en tu web?

https://cse.google.com/cse/create/new

Saludos!
En línea

MaximAlekz

Desconectado Desconectado

Mensajes: 8



Ver Perfil WWW
Re: Obtener informacion de una pagina con php
« Respuesta #6 en: 14 Enero 2016, 05:25 am »

Gracias LuffyFF, y xiruko.
Si, Luffy. Me diste una buena solución.
También tú xiru, pero es que quiero algo original, el buscador de Google ya es muy repetido :/

Gracias a todos por responder a mi tema.[/size]
En línea

mexuru

Desconectado Desconectado

Mensajes: 1



Ver Perfil
Re: Obtener informacion de una pagina con php
« Respuesta #7 en: 16 Enero 2016, 01:19 am »

Tenga una dudas sobre to proyecto:

1) Todo lo esta probando en localhost?
2) Las paginas que vas a grabar en tu buscador tambien se alojan en tu servidor?

Saludos y quedo al pendiente de tu respuesta.
En línea

MaximAlekz

Desconectado Desconectado

Mensajes: 8



Ver Perfil WWW
Re: Obtener informacion de una pagina con php
« Respuesta #8 en: 16 Enero 2016, 16:38 pm »

Si, así es amigo mío.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[source]obtener informacion
Programación Visual Basic
krackwar 3 1,112 Último mensaje 11 Abril 2008, 02:50 am
por seba123neo
Obtener informacion?
Programación Visual Basic
CAR3S? 7 3,173 Último mensaje 13 Febrero 2011, 23:54 pm
por CAR3S?
Obtener información en una página a través de un código.
Programación General
Mrsuit 3 1,762 Último mensaje 15 Enero 2014, 04:08 am
por engel lex
Obtener el $public_seed de una pagina web.
Dudas Generales
Thisfruta 1 1,074 Último mensaje 24 Mayo 2017, 18:34 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines