How-To Ściąganie z rapidshare bez konta premium (free)

Dyskusja w 'Oh'Linux? Software hacking' rozpoczęta przez użytkownika hypnosiss, 17 Luty 2009.

Ładowanie...
  1. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    23:47
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    ŚCIĄGANIE Z RAPIDSHARE BEZ KONTA PREMIUM

    Stworzyłem prosty skrypt w pythonie lecz miał on kilka błędów.
    Mój znajomy powiedział mi że jest w internecie podobny projekt napisany w bashu wykorzystujący głównie wgeta. Bardzo mnie to zaciekawiło, ponieważ w takiej sytuacji będzie można b. łatwo zaimpletować w Download Station.
    Oczywiście info do QNAPa zostało wysłane przez Silasa, lecz zanim dostaniemy pełną decyzje przygotowałem Wam HOWTO wykorzystujący tejże skrypt lecz niestety obsługiwany przez SSH (lub telnet).


    Krok po kroku INSTALACJA:

    1. Instalujemy Optware z QPKG(znajdującym się w Panelu Administracyjnym) oraz ustawiamy wartośc na Enabled(włączony).
    2. Logujemy się na SSH.
    3. Tworzymy plik.

    Wpisuj kolejno:
    Kod (Text):
    1.  
    2. # cd ..
    3. # cd /share/Qdownload
    Tworzymy plik rapid.sh:
    Kod (Text):
    1. # vi rapid.sh
    Wciskamy klawisz "i"
    Kopiujemy to:
    Kod (Text):
    1.  
    2. #!/bin/sh
    3. #
    4. # Download files from Rapidshare using free access (NOT premium accounts).
    5. # Output files downloaded to standard output (one per line).
    6. #
    7. # Dependencies: sed, sleep, expr, wget.
    8. #
    9. # Web: http://code.google.com/p/megaupload-dl/wiki/RapidShare
    10. # Contact: Arnau Sanchez <tokland@gmail.com>.
    11. #
    12. # License: GNU GPL v3.0: http://www.gnu.org/licenses/gpl-3.0-standalone.html
    13. #
    14. set -e
    15.  
    16. # Echo text to standard error.
    17. #
    18. debug() { echo "$@" >&2; }
    19.  
    20. # Get first line that matches a regular expression and extract string from it.
    21. #
    22. # $1: POSIX-regexp to filter (get only the first matching line).
    23. # $2: POSIX-regexp to match (use parentheses) on the matched line.
    24. #
    25. parse() { sed -n "/$1/ s/^.*$2.*$/\1/p" | head -n1; }
    26.  
    27. # Check if a string ($2) matchs a regexp ($1)
    28. #
    29. match() { grep -q "$1" <<< "$2"; }
    30.  
    31. # Output a rapidshare file download URL given its rapidshare URL
    32. #
    33. # $1: A rapidshare URL
    34. #
    35. get_rapidshare_file_url() {
    36.     URL=$1
    37.     while true; do
    38.         WAIT_URL=$(wget -O - "$URL" | parse '<form' 'action="\(.*\)"')
    39.         test "$WAIT_URL" || { debug "can't get wait-page URL"; return 2; }
    40.         DATA=$(wget -O - --post-data="dl.start=Free" "$WAIT_URL")
    41.         test "$DATA" || { debug "can't get wait URL contents"; return 2; }
    42.         LIMIT=$(echo "$DATA" | parse "try again" "\([[:digit:]]\+\) minutes")
    43.         test -z "$LIMIT" && break
    44.         debug "download limit reached: waiting $LIMIT minutes"
    45.         sleep $((LIMIT*60))
    46.     done
    47.     FILE_URL=$(echo "$DATA" | parse "<form " 'action="\([^\"]*\)"')
    48.     SLEEP=$(echo "$DATA" | parse "^var c=" "c=\([[:digit:]]\+\);")
    49.     test "$FILE_URL" || { debug "can't get file URL"; return 2; }
    50.     debug "URL File: $FILE_URL"
    51.     test "$SLEEP" || { debug "can't get sleep time"; SLEEP=100; }
    52.     debug "Waiting $SLEEP seconds"
    53.     sleep $(($SLEEP + 1))
    54.     echo $FILE_URL    
    55. }
    56.  
    57. # Guess is item is a rapidshare URL, a generic URL (try bulk download)
    58. # or a file with links
    59. #
    60. process_item() {
    61.     ITEM=$1
    62.     BASEURL="\(http://\)\?\(www\.\)\?rapidshare.com"
    63.     if match "^$BASEURL/" "$ITEM"; then
    64.         # Rapidshare URL
    65.         echo "$ITEM"
    66.     elif match "^\(http://\)" "$ITEM"; then
    67.         # Non-rapidshare URL, extract RS links (highly fallible!) and download
    68.         wget -O - "$ITEM" | tr -d '\r' | grep -o "$BASEURL/[^\"<>]\+" | uniq
    69.     else
    70.         # Assume it's a file and read links (discard comments and empty lines)
    71.         grep -v "^[[:space:]]*\(#\|$\)" -- "$ITEM"
    72.     fi
    73. }
    74.  
    75. # Don't run main code on testing
    76. #
    77. test "$TESTMODE" = "1" && return
    78.  
    79. # Main
    80. #
    81. if test $# -eq 0; then
    82.     debug "usage: $(basename $0) URL|FILE [URL|FILE ...]"
    83.     exit 1
    84. fi
    85.  
    86. for ITEM in "$@"; do
    87.     process_item "$ITEM" | while read URL; do
    88.         debug "start download: $URL"
    89.         FILE_URL=$(get_rapidshare_file_url "$URL") &&
    90.             wget "$FILE_URL" && echo $(basename "$FILE_URL") ||
    91.             debug "could not download: $URL"
    92.     done
    93. done
    94.  
    i wklejmy do konsoli klikajac prawym przyciskiem myszy w konsole(a dokladniej w czarne tlo )
    Wciskamy ESC oraz SHIFT + Z,Z.
    Czekamy aż skończy wklejanie i potwierdzi że zapisano plik.

    4. Nadajemy chmody.
    Kod (Text):
    1. # chmod 755 rapid.sh
    5. Instalujemy screen.
    Kod (Text):
    1. # ipkg update
    2. # ipkg instal screen

    SKRYPT ZAINSTALOWANY !


    Zawsze przed użyciem skryptu najlepiej wejść do folderu z nim. A zatem:
    Kod (Text):
    1. # cd ..
    2. # cd /share/Qdownload
    ~~ Linki do skryptu można dodawać na trzy sposoby ~~

    - wskazując plik z linkami(oddzielonymi enterem). Przykład:
    Kod (Text):
    1. # ./rapid.sh urls.txt
    - podając adress strony www z linkami.
    Kod (Text):
    1. # ./rapid.sh http://server.com/page-with-rapidshare-links.html
    - podajac przy uruchamianiu skryptu linki odzielając spacją
    Kod (Text):
    1. # ./rapid.sh rapidshare.com/link1 rapidshare.com/link2 rapidshare.com/link3 [...]

    Odpalamyna screenie tak:
    - Pierwszy raz(tzn jesli nie masz uruchomionego screena). Przykładowo:
    Kod (Text):
    1.  
    2. # cd /share/Qdownload
    3. # screen -a
    4. # ./rapid.sh [opcja]

    - Jeśli będąc na screenie chcesz wyjść z konsoli i zostawić ściąganie na nocke wciskasz CTRL+A+D

    - Jeśli bedziesz chciał wrócic do screena wpisujesz:
    Kod (Text):
    1. # screen -r
    - Jeżeli jesteś na screenie i chcesz otworzyć nowe "okienko" wciskasz CTRL+A+C

    - Jeżeli jesteś na screenie i masz wiele otwartych okienek, możesz się przełączać między nimi skrótami CTRL+A+N lub CTRL+A+P.

    - Jeżeli będąc na screenu z działającym skryptem i chcesz ten skrypt wyłączyć wciskasz CTRL+C.


    Źródła: http://code.google.com/p/megaupload-dl/wiki/RapidShare
    Skrypt wykonany przez: Arnau Sanchez. Na licencji GNU GPL v3.0 .
     
  2. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    23:47
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    wczoraj pisałem to na szybko, jest pare błędów, już poprawiam :)
     
  3. Silas Mariusz
    Online

    Silas Mariusz SysOp Administrator

    Dołączył:
    5 Kwiecień 2008
    Wiadomości:
    6 032
    Miejscowość:
    Nowy Sącz
    Local Time:
    00:47
    Oceny:
    +1 339 / 30 / -5
    Followers:
    22
    QNAP:
    TVS-x71
    Ethernet:
    1 GbE
    TVS-x71 1 GbE
    popraw popraw... bo QNAP bardzo chce zobaczyc Twoja prace...
    daj mi znac wiadomoscia na pm...
     
  4. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    23:47
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
  5. phoenix_me
    Offline

    phoenix_me Nowy użytkownik Noobie

    Dołączył:
    28 Wrzesień 2008
    Wiadomości:
    12
    Local Time:
    00:47
    Oceny:
    +0 / 0 / -0
    Followers:
    0
  6. hypnosiss
    Offline

    hypnosiss Moderator Contributor

    Dołączył:
    6 Lipiec 2008
    Wiadomości:
    321
    Miejscowość:
    Polska, Wrocław
    Local Time:
    23:47
    Oceny:
    +28 / 0 / -0
    Followers:
    0
    QNAP:
    TS-109/209
    Ethernet:
    1 GbE
    TS-109/209 1 GbE
    Owszem, powstała nowa, lepsza alternatywa.
    można tam nawet ściągać filmiki z youtube i innych serwisów :)
     

Poleć tę stronę