Rapidshare premium download in linux

imagem de luiz
Aew pessoal do software livre.
Teve uma época logo quando comprei uma conta premium do rapidshare tive problemas no linux pra conseguir baixar os arquivos diretamente por um gerenciador de download.
Com o tempo pesquisando não consegui achar nada satisfatório para resolver esse problema, resolvi criar um script para gerenciar as listas de downloads do rapidshare.
Vamos ao que interessa, o script.
Primeiro antes de usar ele você precisa configurar a sua conta do rapidshare para que consiga fazer download diretamente.
  • Acesse o rapidshare e logue com sua conta premium
  • Depois clique em settings
  • Na seção configuration deixe selecionado a opção "Direct downloads, requested files are saved without redirection via RapidShare"
Uma das outras dependencias do script é que você tenho o gerenciador de download aria no modo texto, no debian você instala ele com:
#apt-get install aria2
Pronto, a primeira parte foi fácil, o script vai estar em anexo no post.
Aqui segue o script com alguns comentários sobre o que ele faz.

#!/bin/bash
#Script de download Rapidshare =)
USER="User"
PASS="Password"
if [ "$1" = "" ]
then
RATE="0"
else
RATE="$1"
fi
DIR='./downloading'
mkdir ./completed
mkdir ./completed/txts
mkdir ./downloading
for i in `ls | grep txt`
do
    DIRD=`echo $i | sed 's/.txt//'`
    echo "$i" >> rapid.log
    echo "`date '+%d-%m-%Y %H:%M:%S'` - Begin download at list $i" >> rapid.log
    for f in `cat $i | grep -v passwd`
    do
        echo "`date '+%d-%m-%Y %H:%M:%S'` - Begin download at file $f" >> rapid.log
    aria2c -c --http-user=$USER --http-passwd=$PASS --max-download-limit=$RATE --dir=$DIR $f
        echo "`date '+%d-%m-%Y %H:%M:%S'` - End download at file $f" >> rapid.log
    done
    echo "`date '+%d-%m-%Y %H:%M:%S'` - End download at list $i" >> rapid.log
    echo "" >> rapid.log
    PASSFILE="`cat $i | grep passwd`"
    mkdir ./completed/$DIRD
    for g in `cat $i | sed 's,.*files.*/,,'`
    do
      mv $DIR/$g ./completed/$DIRD/
    done
    mv $i ./completed/txts/
    if [ "$PASSFILE" != "" ]
    then
        echo "$PASSFILE" | sed 's/passwd\=//' > password.txt
        mv password.txt ./completed/$DIRD/
    fi
done

 
  • Primeiramente deve-se setar seu nome de usuário e senha nos campos USER="" e no PASS="".
    Tipo USER="fulano" PASS="algumacoisa123".
  • O script vai gerar 3 pastas, 2 no local do script, uma dentro do completed
    A pasta downloading tem os arquivos que estão sendo baixados da lista
    A pasta completed tem os arquivos que foram completado
    A pasta txts tem os arquivos de com os links já baixados
  • O script irá gerar um arquivo rapid.log com log das ações.
  • Primeiro crie um arquivo com os links rapidshare que você deseja baixar. Exemplo:
    arquivos.txt
  • Para se fazer o download rode:
    $sh rapidshare.sh
    ou
    $sh rapidshare.sh 50K
    Se colocar uma velocidade ele limitará os downloads da lista para essa velocidade.
Enjoy
Aproveitem, comentem e se possível postem as alterações que vocês fizerem no script.
Abraços a todos.
Luiz Carvalho 
AnexoTamanho
rapidshare.sh1.12 KB