Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Handtuch en 28 Julio 2016, 18:00 pm



Título: Scraping, nuevo en el tema
Publicado por: Handtuch en 28 Julio 2016, 18:00 pm
Hola a todos!

Tengo un nivel "medio" de programacion en C , c++ y queria crear una pagina web, por ahora estoy en el motor de la pagina web y no se como empezar.

Lo que quiero hacer es algo basado en scraping/robot/crawling.. , bueno, pues me gustaria poder interactuar automaticamente con una web, que el programa pueda usar la pagina web automaticamente y me de sus resultados.

Ej. que se meta aqui :http://www.paginasamarillas.es/ (http://www.paginasamarillas.es/) y poner en "que buscas"  por ejemplo "restaurante" y en "lugar" " Barcelona" y darle a  buscar y los resultados que te salga recogerlos.

He leido que se puede recoger los datos a traves de su lenguaje HTML, supongo que habra alguna funcion. Pero el problema es, como podria hacer que haga la busqueda automatica?

Un saludo y gracias!


Título: Re: Scraping, nuevo en el tema
Publicado por: Poyoncio en 28 Julio 2016, 19:14 pm
Si lo que buscas son ideas, podrias hacer alguna aplicacion web en php, (tambien en ruby o python, pero como estas en el apartado de desarrollo web, acercate al foro de scripting si te interesa), volviendo al tema, no entiendo muy bien que quieres hacer, segun lo que he entendido quieres que un cliente envie unos datos al servidor y que este automaticamente los muestre por pantalla. Si es asi y no me equivoco podrias, pedir al usuario los datos por pantalla, si te fijas en el buscador de paginas amarillas si pones en ¿Que buscas? por ejemplo nh hoteles y en ¿Donde? Barcelona te aparecera esto: http://www.paginasamarillas.es/search/all-ac/all-ma/barcelona/all-is/barcelona/all-ba/all-pu/all-nc/1?what=nh+hoteles&where=Barcelona&ub=false&aprob=0.0&nprob=1.0&qc=true  
Lo que podrias hacer seria en funcion de los datos que te pida el cliente en tu web, que tu script modificara la url, por ejemplo si te pide madrid y nh hoteles seria http://www.paginasamarillas.es/search/all-ac/all-ma/madrid/all-is/madrid/all-ba/all-pu/all-nc/1?what=nh+hoteles&where=Madrid&ub=false&aprob=0.0&nprob=1.0&qc=true
Si te fijas hay unos patrones que luego solo seria hacer una peticion GET del contenido guardarlo en una variable y mostrarlo en pantalla en tu web.

Otra idea seria pedir los datos y crear una redireccion de la pagina web con las pistas que te he dado con las url. Si te explicas un poco mejor igual puedo ayudarte.


Esto seria un poco chapucero, pero como te digo yo no se programar en desarrollo web solo seria una idea que podrias automatizar con un script facilmente en php (hay algunos detalles de la url que alomejor tambien tendrias que cambiar pero eso lo dejo en tus manos).

Otra forma mucho mas sencilla seria mediante alguna libreria de python, con la que podrias trabajar directamente con el formulario de paginas amarillas junto con alguna otra libreria de html crawling y algun framwork como django para hacer una aplicacion web. Pero como te digo no corresponde en este apartado  :P :P :P

PD: Espero tu respuesta
Saludos!  


Título: Re: Scraping, nuevo en el tema
Publicado por: Adrialmend en 29 Julio 2016, 08:09 am
Yo lo hacia con CURL, miratelo http://php.net/manual/es/book.curl.php
No es muy díficil.

Un saludo.


Título: Re: Scraping, nuevo en el tema
Publicado por: gm-vl en 20 Agosto 2016, 09:07 am
usa php investiga la funcion file gets content y despues lafuncion preg match all