publikaccion publikaccion @publikaccion

miércoles, junio 11, 2008

.: Descargar archivos de rapidshare.com con una cuenta premium y wget


Este es un minitutorial para relizar descargas desde línea de comandos con wget y un cuenta rapidshare Premium que a mí particularmente me viene muy bien para que mediante otro servidor me descargue ciertos tipos de archivos, ya que tenemos capado el servicio de descarga a través de este servidor, de donde a veces intento descargar manuales y similares.

Principalmente el problema que tenemos que salvar, es que rapidshare cuando nos loggeamos en su página con nuestra cuenta premium, lo que hace es guardarnos una cookie en nuestro sistema, de modo que cuando vamos a proceder a descargar el archivo de turno, simplemente comprueba mediante la cookie, que tenemos autorización para recibir el archivo, momento en el que una vez comprobado se procede a el envío del mismo a nuestro cliente o navegador.

Por ello, lo que necesitamos principalmente es que se nos quede grabada la cookie de nuestra sesión premium en el sistema.

Para ello procedemos de la siguiente manera desde línea de comandos


wget --save-cookies ~/.cookies/rapidshare --post-data "login=<login>&password=<pass>" -O - https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi > /dev/null


Previamente deberemos de tener creado un directorio en nuestra $HOME que se denomine .cookies (oculto) ya que con esta orden, lo que estamos haciendo es aceptar la cookie que nos enviará rapidshare con el login y password que le indicamos en <login> y <pass> correspondiente a nuestro usuario y clave de nuestra cuenta premium rapidshare.

De modo que tenemos

--save-cookies: Nos graba la cookie en un archivo que se denominará /.cookies/rapidshare

--post-data: es la "carga útil" del POST que enviamos al servidor de rapidshare, es decir, los datos que contendrá lo que introduciríamos en los campos login pass en el caso de que estuviéramos en un cliente como puediera ser FireFox, Opera, Konqueror, etc...

-O: descarga los datos HTML como salida estándar. Como con el comando anterior simplemente recuperamos el valor de la cookie que es lo que nos interesa, esta opción nos muestra por pantalla de terminal el contenido del HTML tras lo cual descarta el contenido restante enviando la llamada a /dev/null. En el caso de que no lo hagamos de este modo con esta opción, lo que hará es guardar todo el HTML resultante en un archivo denominado premiumzone.cgi en el directorio en la que ejecutemos el comando. Es decir, nos descargará la página HTML que vemos al entrar en la URL https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi, que no nos hace falta para nada, ya que sólo nos interesa la cookie que nos graba una vez introducidos los datos.

Ahora que ya tenemos los datos de la cookie grabados en nuestro terminal en el directorio /.cookie/rapidshare, que podremos ver viendo el archivo resultante con un


cat $HOME/.cookie/rapidshare


ya podemos comenzar a descargar los archivos que nos interesen de rapidshare desde línea de comandos con wget.

Para ello empleamos el comando


wget -c --load-cookies ~/.cookies/rapidshare <URL>


en donde tenemos que

-c: se usa para "resumir" o continuar la descarga del archivo que nos interese si ya existiera en el directorio en el que estemos ejecutando la descarga, y dicha descarga estuviera estuviera incompleta (es decir que no hubiéramos descargado totalmente el archivo)

--load-cookies: carga la cookie de radpishare de nuestra cuenta premium, para poder realizar la descarga sin tener que introducir el login y pass de nuevo para acceder a nuestra cuentra premium.

<URL>: esta es la URL de rapidshare con el nombre del archivo que nos queremos descargar

Confío en que a más de uno le vendra bien tener este sistema de descarga.

Visto en g-loaded

No hay comentarios: