Vasculhando a net achei a dica do Junior Polegato do VOL e resolvi compartilhar com a comunidade, caso já exista, favor desconsiderar.
Tudo se passa no script abaixo que já faz tudo para nós, inserir o código, esperar e pegar o arquivo via terminal, primeiramente, devemos instalar os pacotes magemagick e tesseract-ocr pelo synaptic ou via linha de comando: apt-get install imagemagick tesseract-ocr .
Após executado, é so usar o comando
auto_megaupload endereço_1
caso queira adicionar mais links, apenas de um espaço e adicione o segundo e sucessivos links.
Script:
#!/bin/bash
# Autor..: Claudio Polegato Junior
# Data...: 25/05/2010
# Arquivo: auto_megaupload
# Versão.: 0.1.0
#
# Copyright© Claudio Polegato Junior <linux@juniorpolegato.com.br>
# Todos os direitos reservados
# Uso: auto_megaupload endereço_1 [[endereço_2 endereço_3 ... ]]
########################################################################
# Endereço passado na linha de comando
LINK="$1"
# Tempo de espera
WAIT=50
# Modo silencioso, comente para ver detalhes
#QUIET="-q"
# Inicia o laço caso não consiga baixar o arquivo
while [ -n "$LINK" ]; do
# Baixa a página inicial que pede o código e armazena em cap.html
wget $QUIET "$LINK" -O cap.html
# Baixa a imagem do código em cap.gif
CAP="`sed -n '/gencap/s/.*src="\([^"]*\).*/\1/p' cap.html`"
wget $QUIET "$CAP" -O cap.gif
# Converte cap.gif em cap.tif apropria para reconhecer o código
convert -separate cap.gif cap.tif
tesseract cap.tif cap
TXT="`grep -m 1 . cap.txt`"
# Exibe o código reconhecido e a imagem, comente se preferir
echo
echo "********************"
echo
echo $TXT
display cap.tif &
echo
echo "********************"
echo
# Monta o bloco de dados para requerer o endereço de download
POST1="`sed -n 's/.*captchacode.*value="\([^"]*\).*/captchacode=\1/p' cap.html`&"
#echo post1 $POST1
POST2="`sed -n 's/.*megavar.*value="\([^"]*\).*/megavar=\1/p' cap.html`&"
#echo post2 $POST2
POST3="captcha=$TXT"
#echo post3 $POST3
POST="$POST1$POST2$POST3"
echo POST $POST
# Requer o endereço de download e armazena em download.html
wget $QUIET --post-data="$POST" "$LINK" -O download.html
# Extrai o endereço de download
DOWN="`sed -n 's/.*downloadlink.*href="\([^"]*\).*/\1/p' download.html`"
echo DOWN $DOWN
# Volta ao início se não conseguir o endereço de download
if [ -z "$DOWN" ]; then
continue
fi
# Esperando o tempo para poder iniciar o download
echo
echo "Esperando $WAIT segundos..."
sleep $WAIT
# Inicia o download, reiniciando se não der certo
if ! wget $QUIET "$DOWN"; then
continue
fi
# Próximo download
shift
LINK="$1"
done
eu fiz um script bem simples para, após o download, apagar o ''lixo'' que resta usando o comando sh arquivo.sh
rm *.html && rm *.txt && rm *.tif && rm *.gif
link para os 2 scripts:
http://www.mediafire.com/?a13m3wj157g1k1d