Foro de elhacker.net

Seguridad Informática => Hacking => Mensaje iniciado por: natko en 22 Octubre 2016, 19:43 pm



Título: Ingreso masivo a muchas webs
Publicado por: natko en 22 Octubre 2016, 19:43 pm
Hola a todos, soy nuevo en el foro :D

Primeramente quiero aclarar que no se si este tema se debe incluir aquí.. ya que también puede tener que ver con la programación..

Mi problema es el siguiente, yo tengo documento de texto que guarda 90mil links. Todos los links son del mismo sitio web, pero de distintos sectores de ese sitio web. De estos 90mil solo un link es correcto, los otros restantes dan error 404 ya que esa dirección del sitio web no existe.
Busqué pero no encontré ningún programa.. no se como se llama tampoco este tipo de programas :p

Lo que hice fue hacer un programa con python utilizando la librería 'urllib2' en python 2.7. El problema de este programa es que tarda demasiado, y no es por una limitación de internet que tarde, sino por un limitación del algoritmo (la librería). Aproximadamente tardaba 24hs para las 90mil links.. aunque claro, esto como máximo, ya que si lo encontrase antes pararía.

Luego probé con otra librería (descargada) llamada 'concurrent', también en python 2.7.. Este si va mas rápido. Aunque tengo un problema que cada 500 links probados el internet se corta unos pocos minutos y se generan algunos timeouts (estos links que devolvieron de error timeout se guardan en otro documento de texto para probarlos luego).. finalmente contando ese retraso los 90mil links tardarían como máximo 12hs..

Ahora mi pregunta final es, alguien conoce otra librería en python o algún lenguaje que pueda hacerlo mas rápido, o aún mejor un programa ya hecho que haga todo esto?

Desde ya gracias por las respuestas!

Saludos!


Título: Re: Ingreso masivo a muchas webs
Publicado por: engel lex en 22 Octubre 2016, 19:47 pm
con urlib puedes hacerlo usando threads... eso si, si la pagina tiene la minima protección espera que te prohiba conectarte por un rato ya que te detectará como un intento de DoS (probablemente esas "casidas de conexión y timeouts que dices)

yo recomendaría usar threads y mantener 10 o 20 conexiones simultaneas... aunque igual 90k links va a tardar tiempo...


Título: Re: Ingreso masivo a muchas webs
Publicado por: Poyoncio en 22 Octubre 2016, 19:58 pm
No entiendo como te puede tardar 24 h 90mil links, yo hice algo similar y en una hora indexaba 300.000, aunque claro depende bastante de la pagina... Como ya te han dicho, urrlib para eso te puede funcionar perfectamente, si quieres mejorar los tiempos que tienes ahora, te recomiendo que utilizes varios threads, pero no los estandar, sino otras librerias que hay en github, es question de buscar


Título: Re: Ingreso masivo a muchas webs
Publicado por: natko en 22 Octubre 2016, 22:51 pm
Ya logre hacer que tarde 30 minutos!

Muchas gracias a ambosss

Saludos!