Theoretical aspects of writing 'Automatic Rapidshare Downloader' script or program

Posted By: Vova
Наверняка среди постоянных посетителей уважаемого сайта AvaxHome.ru (кстати, брильянта среди других сайтов :) найдется много программистов, которые собственно и призываются поднапрячь мозги.

Вам всем приходится делать постоянно одну и ту же дурацки нудную, но очень важную работу: вводить в браузере урл нужного файла, а потом получив линк, качать его.

Меня терзают смутные сомнения: а нельзя ли как-то это автоматизировать? Скажем у меня лично нормально качается с рапидшары только во время "Счастливых Часов", но прибегать из-за этого на работу под утро, наверное, не очень приятно.

Хорошо было бы если бы можно было бы составить только список нужных урлов, по которому в нужное время начиналась закачка. Или для других к примеру через каждый час начиналась новая закачка автоматически и т.д. Зыркание в гугле не дало ничего хорошего, таких прог пока нет.

Немного покопавшись с исходным кодом рапидовских страниц я пришел к выводу что вполне можно что-нибудь наковырять полезное.

К примеру, надо скачать файлик по урлу:

http://rapidshare.de/files/1730298/OReilly.Learning.the.bash.Shell.3rd.Edition.Mar.2005.eBook-DDU.zip.html

При просмотре кода видно, что методом POST по адресу:

http://rapidshare.de

посылаются названия и значения полей:

uri="/files/1730298/OReilly.Learning.the.bash.Shell.3rd.Edition.Mar.2005.eBook-DDU.zip.html",
hint="Service-Abuses will be prosecuted, xxx.xxx.xxx.xxx!",
downloadit="Free"

где xxx.xxx.xxx.xxx - Ваш IP адрес.

Посылка со скрипта такой информации возвращает правильный на текущий сеанс, но защифрованный адрес:

'%3C%68%33%3E%3C%66%6F%6E%74%20%63%6F%6C%6F%72%3D%22%23%43%43%30%30%30%30%22%3E%20%44%6F%77%6E%6C%6F%61%64%3A%3C%2F%66%6F%6E%74%3E%20%3C%61%20%68%72%65%66%3D%22%68%74%74%70%3A%2F%2F%64%6C%32%2E%72%61%70%69%64%73%68%61%72%65%2E%64%65%2F%66%69%6C%65%73%2F%31%37%33%30%32%39%38%2F%33%30%38%30%31%31%34%34%2F%4F%52%65%69%6C%6C%79%2E%4C%65%61%72%6E%69%6E%67%2E%74%68%65%2E%62%61%73%68%2E%53%68%65%6C%6C%2E%33%72%64%2E%45%64%69%74%69%6F%6E%2E%4D%61%72%2E%32%30%30%35%2E%65%42%6F%6F%6B%2D%44%44%55%2E%7A%69%70%22%3E%4F%52%65%69%6C%6C%79%2E%4C%65%61%72%6E%69%6E%67%2E%74%68%65%2E%62%61%73%68%2E%53%68%65%6C%6C%2E%33%72%64%2E%45%64%69%74%69%6F%6E%2E%4D%61%72%2E%32%30%30%35%2E%65%42%6F%6F%6B%2D%44%44%55%2E%7A%69%70%3C%2F%61%3E%3C%2F%68%33%3E'
после декодирования которого получаем ссылку, правда в окружении тегов (здесь теги заменены круглыми скобками, чтобы скрипт авакс пропустил):

(h3)(font color='#CC0000') Download:(/font)(a href='http://dl2.rapidshare.de/files/1730298/30801144/
OReilly.Learning.the.bash.Shell.3rd.Edition.Mar.2005.eBook-DDU.zip')
OReilly.Learning.the.bash.Shell.3rd.Edition.Mar.2005.eBook-DDU.zip(/a)
(/h3)

Отсюда рукой подать до выковыривания регекспами нужного линка и начать закачку.

Я собственно не программист, поэтому обращаюсь к прогаммистам - возможно ли довести до ума и сделать рабочую прогаммулину? И конечно раздать всем желающим :)