Antes de nada, avisar que esto no tiene que ver nada con descargas de contenido ni nada por el estilo. Simplemente es una sencilla introducción a lo que se puede hacer desde Linux. Estos dias, sin nada que hacer, me entró la curiosidad por saber cuantos torrents tiene la página Mejortorrent.com. Decidí entrar para ver que sucede... A la izquierda se puede ver la cantidad de torrents que hay, pero yo quería ir un poco mas lejos.... Me picaba la curiosidad por saber si realmente era así. Decidí buscar la forma de sacar un listado de todas las peliculas que había, y obtener su link. La primera parte era fácil: http://www.mejortorrent.com/peliculas-buscador.html Simplemente ponía en el formulario + Descargas que con valor 0. Ya estaba allí. El problema viene ahora... Para acceder al link del torrent, necesitaba entrar en cada uno de ellos, luego a donde pone descargar, y luego a pulsar en aquí. Un auténtico coñazo si tienes que hacerlo 10000 veces!!! Por eso decidí usar Linux... Esa cosa que la gente cree que solo pueden usar auténticos cracks. Vamos a desmentir eso... Estando dentro del terminal (Si, esa cosa negra que parpadea y te suelta cosas raras), haremos uso del comando curl cURL es una herramienta para usar en un intérprete de comandos para transferir archivos con sintaxis URL, soporta FTP, FTPS, HTTP, HTTPS, TFTP, SCP, SFTP, Telnet, DICT, FILE y LDAP El parámetro -s oculta mensajes del progreso de descarga Con este comando, nos devolverá el contenido de la web, pero.... SORPRESA!! Solo te devuelve código HTML sin ninguna peli... Donde están los casi 10000 resultados? Esto se debe a que la página tiene un formulario... y hay que rellenarlo para que nos devuelva la respuesta.... Utilizaremos una herramienta GNU: formfind Aquí introducimos nuevas cositas: > = Redirige la salida a un fichero. En este caso, todo el contenido de https://raw.githubusercontent.com/bagder/curl/master/perl/contrib/formfind lo gaurdará en el archivo formfind chmod +x = Con esto daremos permisos de ejecución a un archivo. En nuestro caso, a formfind Bien, teniendo esto, necesitamos el formulario, para que formfind busque todas las variables que nos interese. Simplemente, bajamos la pagina: Una vez guardada nuestra página, vamos a analizarla con formfind < = Si antes redirigíamos la salida a un fichero, esto hace el proceso contrario. Es decir, redirigir el contenido de pagina.html a formfind Nos devuelve esto: --- FORM report. Uses 'GET' to URL "secciones.php" Input: NAME="sec" VALUE="buscador" (HIDDEN) Input: NAME="valor" (TEXT) Button: "Buscar" (SUBMIT) --- end of FORM --- FORM report. Uses 'POST' to URL "/peliculas-buscador.html" Select: NAME="campo" Option VALUE="letra" (SELECTED) Option VALUE="titulo" Option VALUE="genero" Option VALUE="anyo" Option VALUE="director" Option VALUE="actores" Option VALUE="contador_total" Option VALUE="ultimos_dias" [end of select] Input: NAME="valor" (TEXT) Select: NAME="valor2" Option VALUE="" (SELECTED) Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" [end of select] Select: NAME="valor3" Option VALUE="" (SELECTED) Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="" Option VALUE="[0-9]" Option VALUE="" [end of select] Select: NAME="valor4" Option VALUE="3" (SELECTED) Option VALUE="7" Option VALUE="30" Option VALUE="90" [end of select] Input: NAME="submit" VALUE="Buscar" (SUBMIT) Input: NAME="videoclub" VALUE="1" (CHECKBOX) --- end of FORM WUALA! Todas las opciones que se utiliza en el formulario! . Se podría hacer manualmente, es decir, analizando todo el código fuente de la página, pero esto es mucho mas cómodo Vamos al lío... Primera variable: Select: NAME="campo" Y sus posibles valores... (solo nos interesa una) Option VALUE="letra" (SELECTED) Option VALUE="titulo" Option VALUE="genero" Option VALUE="anyo" Option VALUE="director" Option VALUE="actores" Option VALUE="contador_total" Option VALUE="ultimos_dias" Segunda variable: Input: NAME="valor" Y como valor, se pone un número. Resumiendo.... Debemos hacer una petición con cURL rellenando el formulario con campo=contador_total y valor=0 Pues vamos a probar: -d = Utiliza variables del formulario. En este caso, lo hemos usado dos veces, porque necesitabamos rellenar campo y valor Eureka!!! La pantalla no para de parpadear con muchas letras, seuro que ha funcionado... Y efectivamente, asi es Pero esto no acaba aquí.... Recordemos que esto nos lleva a otra página, que luego esta misma nos llevará a otra, y, solo después, al link de nuestro torrent Vamos a hacer una cosa... Entramos en una página cualquiera, y vemos como es el enlace que nos lleva a la última página antes del link que necesitamos. Un ejemplo: Yo usaré el primero de todos: http://www.mejortorrent.com/peli-descargar-torrent-2444--3-colegas-y-una-salchicha.html Analizando el enlace que tiene dentro, veo que es una cosa asi: http://www.mejortorrent.com/secciones.php?sec=descargas&ap=contar&tabla=peliculas&id=2444&link_bajar=1 Os habeis fijado? El único elemento identificativo es un ID. Vamos a buscar ese torrent en los resultados de curl (recordar que podeis redirigir la salida de curl a un fichero para tenerlo siempre a mano):
Datos archivados del Taringa! original
310puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
9visitas
0comentarios
Dar puntos: