Megválaszolatlan hozzászólások | Aktív témák Pontos idő: szomb. dec. 28, 2024 4:54



Hozzászólás a témához  [ 91 hozzászólás ]  Oldal Előző  1, 2
OFF topic 
Szerző Üzenet
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
G4b1, neste
Nincs mit :)


szer. jún. 10, 2009 9:48
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. jan. 21, 2009 13:47
Hozzászólások: 9
Hozzászólás 
nagyon köszi, nálam is megy! :D viszont a data iszonyat lassú most nap közben, remélem este jobb lesz.


kedd jún. 09, 2009 16:57
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szomb. feb. 28, 2009 23:20
Hozzászólások: 2
Hozzászólás 
Sparow2 írta:
Fogalmam sincs ...
Milyen shelled van?
Esetleg próbáld meg az elején átírni a #!/bin/sh sort #!/bin/bash-ra.


Ezzel már sikeresen elindul, rapid és data is a többit nem néztem de gondolom annak is menni kell akkor. Köszönöm a segítséget. Nagyon profi munka még mindig csak csodálkozni tudok rajta, h mennyivel könnyebb így már.


hétf. jún. 08, 2009 20:45
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Fogalmam sincs ...
Milyen shelled van?
Esetleg próbáld meg az elején átírni a #!/bin/sh sort #!/bin/bash-ra.


hétf. jún. 08, 2009 14:52
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szomb. feb. 28, 2009 23:20
Hozzászólások: 2
Hozzászólás 
Nálam nem működik alapból a dolog ilyen hibát kapok:

/home/amarant/.scripts/letolto2: 22: function: not found
/home/amarant/.scripts/letolto2: 26: try: not found
Ideiglenes állomány letöltése nem sikerült:

Megcsináltam úgy, hogy kimásoltam csak a data hivatkozásokat, ami elv azokban a sorokban vannak, ha netán tényleg sorokat jelentenek a számok. Illetve az utolsó részt is átmásoltam a régi script-be ami minden serverre vonatkozik és akkor szépen megy.


hétf. jún. 08, 2009 10:48
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Tessék:
Azt még ki kell próbálni, hogy elég-e a reklámot csak spider-ezni, vagy valóban le kell tölteni. Sőt, ha nem jön be a reklámoldal, az is elég már, úgy vettem észre. Ha gond van, írj.
Nehézkes volt a tesztelés, mert ha egyszer bejött (és a kezdő oldal után X másodperccel is bejön, ha nem nézel reklámot elég volna azt kivárni), utána csak 1 óra múlva lehetett újra próbálni.
Kód:
#!/bin/sh
# Filmek letöltéséhez használható script
# Paraméterei:
#       1. a file, amiben a letöltendő file-ok URL-jei vannak
#       2. a könyvtár, ahová mentsen (ha nincs megadva, akkor az aktuális könyvtár)
#       3. parancs, amit végrehajt, ha végzett (pl. halt a számítógép leállításához)
# Eddig működik a következő helykről: data.hu

SERVER_DATA="data.hu"
SERVER_RAPID="rapidshare.com"
SERVER_HREF="href.hu"
SERVER_FSX="fsx.hu"

OK=0
HIBA=1
DEFTRY=3

#LIMIT_RATE="256k"
LIMIT_RATE="0"

# letöltés a data.hu-ról
function get_data {
    if ! try "wget -T 30 -qO \"$TMPFILE\" \"$URL\"" "Ideiglenes állomány letöltése"; then
        echo "Ideiglenes állomány letöltése nem sikerült: $URL"
        return "$HIBA"
    fi
   
    # megnézzük, van-e az oldalon reklám
    REKLAMLINK=`sed -ne '1h;1!{H;/<div *class="banner_doboz" *>/h;/<\/div>/{g;s/<div *class="banner_doboz" *>.*a *href="\([^"]*\)".*<\/div>.*$/\1/;T;p;q}}' "$TMPFILE"`
    if [ -n "$REKLAMLINK" ]; then       # ha van reklám, akkor letöltjük az oldalt
        REKLAMLINK="http://$SERVER_DATA$REKLAMLINK"
        echo "Reklám letöltése ..."
        if ! try "wget -T 30 --spider -qO \"$TMPFILE\" \"$REKLAMLINK\"" "Reklám letöltése"; then
            echo "A reklám letöltése nem sikerült: $REKLAMLINK" # nem sikerült
            # hibás letöltés esetén is lehet jó, folytatjuk
            #return "$HIBA"
        fi
       
        # sikerült a reklám letöltése, most jöhet a következő lépés (rekurzív)
        get_data
        return $?
    fi
   
    DATAURLSOR=`grep -m 1 "class=\"download_it\"" "$TMPFILE"`
    if [ -z "$DATAURLSOR" ]; then
        echo "Nem találom az ideiglenes állományban a linket (window.location.href)"
        return "$HIBA"
    fi
    #DATAURL=`echo "$DATAURLSOR" | sed -ne 's,^.*'\''\(http://.*\)'\''.*$,\1,p'`
    DATAURL=`echo "$DATAURLSOR" | sed -ne 's/^.*href="\([^"]*\)".*$/\1/p'`
    if [ -z "$DATAURL" ]; then
        echo "Nem találom az URL-t a linkben"
        return "$HIBA"
    fi

    if ! try "wget -T 30 --limit-rate=\"$LIMIT_RATE\" -cP \"$TARGETDIR\" \"$DATAURL\""; then
        echo "Állomány letöltése nem sikerült: $DATAURL"
        return "$HIBA"
    fi
    return "$OK"
}

# letöltés a rapidshare-ről
# ez rekurzív függvény lett, mert elképzelhetőek várakozások
# rövid fileoknál nincs várakozás a Free user gombra kattintva, nagyoknál van
# plusz ha lejárt az ingyenes kvóta, akkor egy hosszabb várakozás is jön
function get_rapidshare {
    BURL="$1"
    WGETPARAM="$2"
    SZOV="${3:-Ideiglenes állomány letöltése}"
    if ! try "wget $WGETPARAM -qO \"$TMPFILE\" \"$BURL\"" "$SZOV"; then
        echo "Ideiglenes állomány letöltése nem sikerült: $URL"
        return "$HIBA"
    fi
   
    GOMBSOR=`grep -m 1 "form id=\"ff\" action=" "$TMPFILE"`
    KISVAR=`grep -m 1 "Still ' + c + ' seconds" "$TMPFILE"`
    NAGYVAR=`grep -m 1 "You have reached the download limit for free-users. Would you like more?" "$TMPFILE"`
    DUPLA=`grep -m 1 "Your IP address .* is already downloading a file." "$TMPFILE"`
    NOTFOUND=`grep -m 1 "The file could not be found." "$TMPFILE"`
   
    # "Free user" gomb
    if [ -n "$GOMBSOR" ]; then
        GOMB=`echo "$GOMBSOR" | sed -ne 's/^.*action="\([^"]*\)".*$/\1/p'`
        if [ -z "$GOMB" ]; then
            echo "Nem találom a \"Free user\" gombot ..."
            return "$HIBA"
        fi
        get_rapidshare "$GOMB" "--post-data='dl.start=Free'" "Free user gomb lenyomására jövő oldal letöltése"
    # kis várakozás
    elif [ -n "$KISVAR" ]; then
        VAR=`grep -m 1 "var c=[[:digit:]]*;" "$TMPFILE" | sed -ne 's/^.*=\([[:digit:]]*\);.*$/\1/p'`
        LINK=`grep -m 1 "input checked" "$TMPFILE" | sed -ne 's/^.*document.dlf.action=\\\\'\''\([^\\\\]*\)\\\\.*$/\1/p'`
       
        if [ -z "$VAR" ]; then
            echo "Nem találom a rövid várakozás idejét ..."
            return "$HIBA"
        fi
        if [ -z "$LINK" ]; then
            echo "Nem találom a linket ..."
            return "$HIBA"
        fi
       
        # rövid várakozás
        varakozas "$VAR"
       
        # letöltés (a rapidshare-n nem lehet folytatni a félbeszakadt letöltést)
        # ezért megvizsgáljuk, hogy a file teljesen megvan-e, ha nem, akkor letöltjük újra
        if teljes "$TARGETDIR" "$LINK"; then
            echo "A file már le volt töltve, nem töltöm le újra: $LINK"
            return "$OK"
        fi
       
        if ! try "wget --limit-rate=\"$LIMIT_RATE\" -P \"$TARGETDIR\" \"$LINK\""; then
            echo "Állomány letöltése nem sikerült: $LINK"
            return "$HIBA"
        fi
    # nagy várakozás
    elif [ -n "$NAGYVAR" ]; then
        VAR=`grep -m 1 "Or try again in about [[:digit:]]* minutes." "$TMPFILE" | sed -ne 's/^.*about \([[:digit:]]*\) .*$/\1/p'`
        if [ -z "$VAR" ]; then
            echo "Nem találom a hosszú várakozás idejét!"
            return "$HIBA"
        fi
        VAR=`expr "$VAR" "*" 60`
        # hosszú várakozás
        varakozas "$VAR"
       
        get_rapidshare "$BURL" "$WGETPARAM" "$SZOV"
       
    # hibás link, vagy már törölték
    elif [ -n "$NOTFOUND" ]; then
        echo "A file nem található. Hibás a link, vagy már törölték: $BURL"
        return "$HIBA"
       
    # már töltünk le erről az IP címről, kilépés
    elif [ -n "$DUPLA" ]; then
        IPADDR=`echo "$DUPLA" | sed -ne 's/^.*address //' -e 's/ is.*$//p'`
        echo "Erről az IP címről ($IPADDR) már töltünk le. A másik töltés befejeződése után újra el lehet indítani ezt."
        exit "$HIBA"
       
    # hiba, nem lekezelt ág, kilépés
    else
        echo "get_rapidshare nem lekezelt ág: $TMPFILE"
# ideiglenes megoldás ----------------------------------------------------------       
#        exit "$HIBA"
        varakozas 60
        get_rapidshare "$BURL" "$WGETPARAM" "$SZOV"
# ideiglenes megoldás ----------------------------------------------------------       
    fi
}

# letöltés a href.hu-ról
function get_href {
    if ! try "wget -S --spider \"$URL\" 2>\"$TMPFILE\"" "Ideiglenes állomány letöltése"; then
        echo "Ideiglenes állomány letöltése nem sikerült: $URL"
        return "$HIBA"
    fi
    DATAURLSOR=`grep -m 1 "window.location.href" "$TMPFILE"`
    if [ -z "$DATAURLSOR" ]; then
        echo "Nem találom az ideiglenes állományban a linket (window.location.href)"
        return "$HIBA"
    fi
}

# letöltés az fsx.hu-ról
# trükkös ellenőrzések vannak benne szerveroldalon az automatikus letöltés nehezítésére
function get_fsx {
    FSXSERVER="http://www.fsx.hu/"
   
    # kell egy ideiglenes állomány a sütiknek
    TMPCOOKIE="$TMPFILE.cookie"
   
    # Úgy kell letölteni, mintha egy böngészőben néznénk az oldalt, pl. Linux-os Mozilla
    HEADERS=" --user-agent=\"Mozilla/5.0 (X11; U; Linux i686; hu-HU; rv:1.9.0.6) Gecko/2009020409 Iceweasel/3.0.6 (Debian-3.0.6-1)\" "
   
    if ! try "wget -qT 30 --cookies=on --keep-session-cookies --save-cookies \"$TMPCOOKIE\" $HEADERS -O \"$TMPFILE\" \"$URL\"" "Ideiglenes állomány letöltése"; then
        echo "Ideiglenes állomány letöltése nem sikerült: $URL"
        rm -f "$TMPCOOKIE"
        return "$HIBA"
    fi
   
    # az oldalon lévő tartalom letöltése (képek, hátterek), szerveroldalon figyelik!
    # csak a header-eket kérjük le, magát a tartalmat nem, mintha már a böngésző cache-sében volna.
    TARTALOM=`sed -ne 's/^.*<[^>]*background *= *"\([^"]*\)"[^<]*>.*$/\1/gp' -ne 's/^.*<[^>]*img *src *= *"\([^"]*\)"[^<]*>.*$/\1/gp' -ne 's/^.*<[^>]*rel *= *"stylesheet".*href *= *"\([^"]*\)"[^<]*>.*$/\1/gip' "$TMPFILE" | sort | uniq | grep -iv "^http://" | sed -e 's,^\| , '"$FSXSERVER"',g'`;
    echo "Oldalon lévő tartalom lekérése ..."
    eval wget -q --cookies=on --keep-session-cookies --load-cookies "$TMPCOOKIE" --spider $TARTALOM
   
    # "Ingyen tovább" gomb oldalának letöltése
    FSXURLSOR=`grep -m 1 "download.php" "$TMPFILE"`
    if [ -n "$FSXURLSOR" ]; then
        echo "\"Ingyen tovább\" gomb oldalának letöltése ..."
        FSXURL="$FSXSERVER`echo "$FSXURLSOR" | sed -ne 's/^.*href="\([^"]*\)".*$/\1/ip'`"
    fi
    varakozas 3         # 3 sec. várakozás, mielőtt továbbkattintunk
   
    # várakozás az előttünk lévő letöltőkre
    REFRESH=1
    while true; do
        if ! try "wget -qT 30 --cookies=on --keep-session-cookies --load-cookies \"$TMPCOOKIE\" $HEADERS -O \"$TMPFILE\" \"$FSXURL\""; then
            echo "Ideiglenes állomány letöltése nem sikerült: $URL"
            rm -f "$TMPCOOKIE"
            return "$HIBA"
        fi
       
        # itt kivesszük, hogy hány mp-enként kell frissíteni, és milyen oldalra
        if [ "$REFRESH" == "1" ]; then
            # A refresh meta tagból kivesszük, hogy hány mp-enként kell frissíteni,
            # és hová, ha nem erre az oldalra
            VARSEC=`sed -ne 's/^.*<META.*HTTP-EQUIV *= *"refresh".*content *= *"\([[:digit:]]*\)[ ;"].*/\1/ip' "$TMPFILE"`
            if [ -z "$VARSEC" ]; then
                echo "Nem találom az oldal frissítésének idejét!"
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
           
            UJURL=`sed -ne 's/^.*<META.*HTTP-EQUIV *= *"refresh".*content *= *"[[:digit:]]*; *URL *= *\([^" ]*\)[ "].*$/\1/ip' "$TMPFILE"`
            if [ -z `echo "$UJURL" | sed -ne 's@^\(http://[^/]*\)/.*$@\1@ip'` ]; then
                # ha nincs az elején http://szervenév, akkor odaírjuk az fsx-es szervert
                UJURL="$FSXSERVER$UJURL"
            fi
           
            if [ -z "$UJURL" -o "$UJURL" == "$FSXURL" ]; then
                REFRESH=""      # itt már önmagát hívja (mivel dinamikus lap, elvileg változhat, de nem fog)
            else
                FSXURL="$UJURL"
            fi
        fi
       
        if grep -iq "a kiv.lasztott f.jl let.lt.s.t megkezdheted" "$TMPFILE"; then
            echo
            FSXSERVER=`sed -ne 's/^.*<a .*id='\''dlink'\'' .*href="\([^"]*\)".*$/\1/p' "$TMPFILE"`
            if [ -z "$FSXSERVER" ]; then
                echo "A letölő URL szerverét nem találom: id='dlink'"
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
            VEGSOURL=`sed -ne 's/^.*elem\.href *= *elem\.href *+ *"\([^"]*\)".*$/\1/p' "$TMPFILE"`
            if [ -z "$VEGSOURL" ]; then
                echo "A letöltendő URL-t nem találom: elem.href = elem.href + \"URL\""
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
            VEGSOURL="$FSXSERVER$VEGSOURL"
           
            if teljes "$TARGETDIR" "$VEGSOURL"; then
                echo "A file már le volt töltve, nem töltöm le újra: $VEGSOURL"
                rm -f "$TMPCOOKIE"
                return "$OK"
            fi
            if ! try "wget -T 30 --cookies=on --keep-session-cookies --load-cookies \"$TMPCOOKIE\" $HEADERS --limit-rate=\"$LIMIT_RATE\" -P \"$TARGETDIR\" \"$VEGSOURL\""; then
                echo "Az állomány letöltése nem sikerült: $VEGSOURL"
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
           
            rm -f "$TMPCOOKIE"
            return "$OK"
        else
            SZALDB=`sed -ne 's/^.*ingyenes let.lt.-sz.lak:.*<strong> *\([[:digit:]]\+ *\/ *[[:digit:]]\+\)db.*$/\1/ip' "$TMPFILE"`
            FELHDB=`sed -ne 's/^.*<strong>\([[:digit:]]\+\)<\/strong>.*felhaszn.l. van el.tted.*$/\1/ip' "$TMPFILE"`
            if [ -z "$FELHDB" ]; then
                echo -e "\nHiba: nem találom az előttünk lévő felhasználók számát!"
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
           
            echo -ne "Felhasználók előttünk: $FELHDB (szálak: $SZALDB) ...          \r"
            sleep $VARSEC
        fi
    done
}

# Megvizsgáljuk, hogy egy file le van-e töltve teljesen
# Paraméterek:  1. directory, ahová menteni kell
#               2. URL, ahonnét tölteni kell
# Visszatérési érték: $OK = le van töltve, $HIBA = nincs letöltve
function teljes {
    DIR="$1"
    URL="$2"
   
    # header lekérése
    echo -n "Header lekérése ... "
    if ! try "wget -S --spider \"$URL\" 2>\"$TMPFILE\""; then
        echo "nem sikerült."
        return "$HIBA"
    fi
    echo "sikerült."
   
    # a filenév
    # FNEV=`sed -ne 's/^ *=> \`\([^'\'']*\)'\''.*$/\1/gp' "$TMPFILE"`
    FNEV=`sed -e '2!d' -e 's/^ *=> *//g' -e 's/\`//g' -e 's/'\''.*$//g' -e 's@^.*/@@g' "$TMPFILE"`
    if [ -z "$FNEV" ]; then
        # nem találja a filenevet, letöltjük újra
        echo "Nem találom a filenevet!"
        return "$HIBA"
    fi
   
    PFNEV="$DIR/$FNEV"
    if [ ! -e "$PFNEV" ]; then
        # nem létezik a file, le kell tölteni
        return "$HIBA";
    fi
   
    # a file-t más használja, kilépés
    if lsof -- "$PFNEV" >/dev/null 2>&1; then
        echo "A file-t más is használja: $PFNEV"
        exit "$HIBA"
    fi
   
    # a file mérete byte-ban
    LEN=`sed -ne 's/^ *content-length *: *//gpi' "$TMPFILE"`
    if [ -z "$LEN" ]; then
        echo "Nem találom a file hosszát!"
        return "$HIBA"
    fi
   
    # a meglévő file mérete byte-ban
    FHOSSZ=`ls -l "$PFNEV" | sed -ne 's/^[^ ]* *[^ ]* *[^ ]* *[^ ]* *//' -e 's/ .*$//p;q'`
    if [ "$LEN" -eq "$FHOSSZ" ]; then
        # teljes hosszan le van töltve, nem kell letölteni
        return "$OK"
    fi
   
    # a file létezik, de nem teljesen volt letöltve
    rm -f "$PFNEV"
    return "$HIBA"
}

# Várkozás
# Paraméterek:  1. a várakozás ideje másodpercben
#               2. ahol éppen járunk (híváskor nem kell megadni)
function varakozas {
    MAX="${1:-0}"
    IDO="${2:-0}"
    echo -ne "\rVárakozás $IDO/$MAX mp ..."
    if [ "$IDO" -ge "$MAX" ]; then
        echo ""
        return
    fi
    sleep 1
    varakozas "$MAX" "`expr \"$IDO\" + 1`"
}

# Parancsot próbál végrehajtani
# Paraméterek:  1. a végrehajtandó parancs
#               2. kiírandó szöveg (default üres, és nem ír ki semmit)
#               2. ennyiszer próbálkozik maximum (default $DEFTRY)
#               3. ennyiedik próbálkozás (ezt nem kell átadni, csak a rekurzió miatt kell)
function try {
    PARANCS="$1"
    SZOVEG="$2"
    MAXDB="${3:-$DEFTRY}"
    DB="${4:-1}"
   
    if [ -n "$SZOVEG" ]; then
        echo "$SZOVEG ($DB / $MAXDB) ... "
    fi
   
    if eval "$PARANCS"; then
        return "$OK"
    fi
    if [ "$DB" -lt "$MAXDB" ]; then
        try "$PARANCS" "$SZOVEG" "$MAXDB" "`expr \"$DB\" + 1`"
    else
        return "$HIBA"
    fi
}

# Szervertől függően meghív egy letöltő függvényt
function letolt {
    echo "-----------------------------------------------------------------------"
    echo "Lekérés: $URL"
    SERVER=`echo "$URL" | sed -e 's@^.*http://@@' -e 's@/.*$@@'`
    case "$SERVER" in
        "$SERVER_DATA")  get_data;;
        "$SERVER_RAPID") get_rapidshare "$URL";;
        "$SERVER_HREF")  get_href;;
        *."$SERVER_FSX") get_fsx;;
        *) echo "Nem implementált szerver: \"$SERVER\"";;
    esac
}

if [ $# -lt 1 ]; then
    echo "A script használata:"
    echo "`basename \"$0\"` lista_file [mentési_könyvtár] [parancs]"
    exit "$HIBA"
fi
   
URLFILE="$1"
if [ ! -r "$URLFILE" ]; then
    echo "Az állományt nem tudom olvasni: \"$URLFILE\""
    exit "$HIBA"
fi

TARGETDIR="${2:-`pwd`}"
if [ ! -d "$TARGETDIR" ]; then
    echo "A könyvtár nem létezik: \"$TARGETDIR\""
    exit "$HIBA"
elif [ ! -r "$TARGETDIR" -o ! -w "$TARGETDIR" -o ! -x "$TARGETDIR" ]; then
    echo "A könyvtárra nincs meg az olvasás, írás és keresés jogosultság: \"$TARGETDIR\""
    exit "$HIBA"
fi

COMMAND="$3"

TMPFILE=`mktemp -q -t get_files.XXXXXXXX`
if [ -z "$TMPFILE" ]; then
    echo "Ideiglenes állomény létrehozása nem sikerült"
    exit "$HIBA"
fi

# más karakterkészlettel rendelkező HTML file-okat is tudjunk kezelni
export LANG=C

echo "Filmletöltés a \"$TARGETDIR\" könyvtárba."
shopt -s nocasematch
for URL in `grep -i "http://" "$URLFILE"`; do
    letolt "$URL"
done
rm -f "$TMPFILE"

# ha volt parancs a befejés után, akkor végrehajtjuk
if [ -n "$COMMAND" ]; then
    eval "$COMMAND"
fi


vas. jún. 07, 2009 21:05
Profil Privát üzenet küldése
a fórum lelke
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 11967
Tartózkodási hely: Budapest, Solymár
Hozzászólás 
Sparow2 írta:
... de én már csak ilyen régimódi vagyok ...

Off:
Ezt eddig rám mondták a Fórumban (joggal). :D


vas. jún. 07, 2009 15:26
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
neste
Bocs a késlekedésért, most lesz egy kis időm, és megnézem a scriptet ... aztán bemásolom amikor kész lesz, hátha aktuális még.
A következő terv egy script az ikariamhoz, amivel szépen átláthatom az összes várost egyszerre. Még csak terv, de a katonai mozgásoktól a bevételekig, az épületekig, mindent.

Laci_L
Sok értelme nem volt a kártyának, mert a legközelebbi automata 15 km-re volt, ezért mindig volt nálam ennyi kp hogy elég legyen (kb. 1 éve már van egy automata kb. 1/2 km-re is, de én már csak ilyen régimódi vagyok)


vas. jún. 07, 2009 12:21
Profil Privát üzenet küldése
a fórum lelke
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 11967
Tartózkodási hely: Budapest, Solymár
Hozzászólás 
Sparow2 írta:
... Nincs kártyám :) Se dombornyomott, se simanyomott ...

Szinte hihetetlen, de hát te tudod. :shock: :o
Külföldön szinte megmozdulni sem lehet nélküle, sőt van ahol gyanús leszel, ha kp-vel fizetsz. :D


csüt. máj. 28, 2009 15:26
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Laci_L írta:
Idézet:
... mert az utaláshoz be kell mennem a bankba ...

Nem kell. Felugrik a banki ablak, megadod a kártya adatokat, és kész, kb 10mp. :shock:
Az igaz, hogy dombornyomott kártya kell. De az meg hosszútávon megéri (legalább is nekem). :roll:

Jaaa, ez nem olyan utalás, amire én gondoltam ...
Nincs kártyám :) Se dombornyomott, se simanyomott.
Az asszonynak van egy marék kártyája, de én már csak ilyen régimódi vagyok ...

Bocs, neste, de ebből már csak a hétvégén lesz valami, mert megint most értem odáig, hogy itthon feljöttem a netre, aztán már fekszek, mert reggel meg kelnem kell ...


szer. máj. 27, 2009 22:01
Profil Privát üzenet küldése
a fórum lelke
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 11967
Tartózkodási hely: Budapest, Solymár
Hozzászólás 
Sparow2 írta:
... nem is azért készült, hogy 100 ft-ot megspóroljak, csak a "kihívás" kedvéért ...

Gondoltam. :D

Idézet:
... Akkor a rapidshare-ről töltött le szépen ...

Én befizetek oda, havi 1700-at megér nekem, mert sokszor töltök le onnan (zenegyűjtés).

Idézet:
... mert az utaláshoz be kell mennem a bankba ...

Nem kell. Felugrik a banki ablak, megadod a kártya adatokat, és kész, kb 10mp. :shock:
Az igaz, hogy dombornyomott kártya kell. De az meg hosszútávon megéri (legalább is nekem). :roll:


szer. máj. 27, 2009 16:27
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Laci_L írta:
Sparow2 írta:
... a 2 film majdnem végig lejött 1 reklámra kattintással ...

Vessetek meg: egy napra átutaltam kemény 125 Ft-ot, és egy napig azt töltöttem, amit akartam. :shock:

Nekem egyszerűbb volt. :D

Tudom, nem is azért készült, hogy 100 ft-ot megspóroljak, csak a "kihívás" kedvéért.
Én magam hónapok óta nem is használtam, éppen pár napja szedtem elő.
Akkor a rapidshare-ről töltött le szépen, a data.hu-ra meg kellett egyet kattintani a böngészőből, aztán az is jött utána. Nekem is egyszerű volt, semmit nem csináltam, csak a scriptet elindítottam, és kész.
(OFF: egyébként nekem inkább az sms jönne be, mert az utaláshoz be kell mennem a bankba)

neste
Nem tudom, mi lehetett a baj. Nálam még jó volt, 2 vagy 3 (vagy 4?) napja. Valószínűleg valami a copy-paste-nél csúszott el.
Ma már nem jutott rá időm, lassan fekszek aludni, mert reggel korán kelek ... de lehet, még a hétvége előtt szakítok rá időt ...


kedd máj. 26, 2009 21:02
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. jan. 21, 2009 13:47
Hozzászólások: 9
Hozzászólás 
Sparow2 írta:
Vagy ma este, vagy a hétvégén belerakom ezt a módosítást, ez csak kis változtatás.

Ui: ha az új nem megy sehol, annak lehet az az oka, hogy van benne néhány hosszú sor, amit innét kimásolva 2 sor lesz az 1 hosszúból. Majd erre is odafigyelek, és 80 karakter szélesre vágom mindet.


szuper köszi!

a hosszú sorok nekem jónak tűnnek egyébként. egyet legalábbis most át copy pasteltem és nem tűnik úgy hogy törve lenne.

a hibaüzenet ez rapidos(!) letöltésnél is (ami annyiban fura, hogy ezek datás program részek):
./letolto: 22: function: not found
./letolto: 26: try: not found
Ideiglenes állomány letöltése nem sikerült:


kedd máj. 26, 2009 17:52
Profil Privát üzenet küldése
a fórum lelke
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 11967
Tartózkodási hely: Budapest, Solymár
Hozzászólás 
Sparow2 írta:
... a 2 film majdnem végig lejött 1 reklámra kattintással ...

Vessetek meg: egy napra átutaltam kemény 125 Ft-ot, és egy napig azt töltöttem, amit akartam. :shock:

Nekem egyszerűbb volt. :D


kedd máj. 26, 2009 16:17
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Szia, neste!

Egyelőre nincs, a data.hu annyit változott, hogy óránkét egyszer rá kell kattintani a reklámra az "ingyenes" gomb alatt.
A lap többi része nem változott, ha böngészőben beírod az egyik letöltendő linket, és rákattintasz a reklámra, utána a script működik, amíg újra nem kell rákattintani a reklámra (az oldalon lévő leírás alapján 1 óra, de éppen pár napja töltöttem le 3 filmet ismerősöknek --2 data.hu és 1 rapidshare--, és akkor vettem észre, hogy már más az oldal, de több időt adott, nem 1 órát: a 2 film majdnem végig lejött 1 reklámra kattintással)

Vagy ma este, vagy a hétvégén belerakom ezt a módosítást, ez csak kis változtatás.

Ui: ha az új nem megy sehol, annak lehet az az oka, hogy van benne néhány hosszú sor, amit innét kimásolva 2 sor lesz az 1 hosszúból. Majd erre is odafigyelek, és 80 karakter szélesre vágom mindet.


kedd máj. 26, 2009 7:25
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. jan. 21, 2009 13:47
Hozzászólások: 9
Hozzászólás 
hella Sparow2
Van most a Datán is működő script változatod? nekem a régi csak a rapidon megy, ez az új amit ide bepasteltél sehol :)
köszi


hétf. máj. 25, 2009 22:21
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. ápr. 08, 2009 13:06
Hozzászólások: 4
Hozzászólás 
Helló!
Nem tudjátok hogy a citromail-nak mi a servere?


csüt. ápr. 09, 2009 12:34
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Tessék, bár most meg a data.hu változott, azt mondják ...
Meg van benne néhány hosszú sor, majd össze fogom törni rövidebbe.

Addig is:
Kód:
#!/bin/sh
# Filmek letöltéséhez használható script
# Paraméterei:
#       1. a file, amiben a letöltendő file-ok URL-jei vannak
#       2. a könyvtár, ahová mentsen (ha nincs megadva, akkor az aktuális könyvtár)
#       3. parancs, amit végrehajt, ha végzett (pl. halt a számítógép leállításához)
# Eddig működik a következő helykről: data.hu

SERVER_DATA="data.hu"
SERVER_RAPID="rapidshare.com"
SERVER_HREF="href.hu"
SERVER_FSX="fsx.hu"

OK=0
HIBA=1
DEFTRY=3

LIMIT_RATE="256k"
#LIMIT_RATE="0"

# letöltés a data.hu-ról
function get_data {
    if ! try "wget -T 30 -qO \"$TMPFILE\" \"$URL\"" "Ideiglenes állomány letöltése"; then
        echo "Ideiglenes állomány letöltése nem sikerült: $URL"
        return "$HIBA"
    fi
    DATAURLSOR=`grep -m 1 "class=\"download_it\"" "$TMPFILE"`
    if [ -z "$DATAURLSOR" ]; then
        echo "Nem találom az ideiglenes állományban a linket (window.location.href)"
        return "$HIBA"
    fi
    #DATAURL=`echo "$DATAURLSOR" | sed -ne 's,^.*'\''\(http://.*\)'\''.*$,\1,p'`
    DATAURL=`echo "$DATAURLSOR" | sed -ne 's/^.*href="\([^"]*\)".*$/\1/p'`
    if [ -z "$DATAURL" ]; then
        echo "Nem találom az URL-t a linkben"
        return "$HIBA"
    fi

    if ! try "wget -T 30 --limit-rate=\"$LIMIT_RATE\" -cP \"$TARGETDIR\" \"$DATAURL\""; then
        echo "Állomány letöltése nem sikerült: $DATAURL"
        return "$HIBA"
    fi
    return "$OK"
}

# letöltés a rapidshare-ről
# ez rekurzív függvény lett, mert elképzelhetőek várakozások
# rövid fileoknál nincs várakozás a Free user gombra kattintva, nagyoknál van
# plusz ha lejárt az ingyenes kvóta, akkor egy hosszabb várakozás is jön
function get_rapidshare {
    BURL="$1"
    WGETPARAM="$2"
    SZOV="${3:-Ideiglenes állomány letöltése}"
    if ! try "wget $WGETPARAM -qO \"$TMPFILE\" \"$BURL\"" "$SZOV"; then
        echo "Ideiglenes állomány letöltése nem sikerült: $URL"
        return "$HIBA"
    fi
   
    GOMBSOR=`grep -m 1 "form id=\"ff\" action=" "$TMPFILE"`
    KISVAR=`grep -m 1 "Still ' + c + ' seconds" "$TMPFILE"`
    NAGYVAR=`grep -m 1 "You have reached the download limit for free-users. Would you like more?" "$TMPFILE"`
    DUPLA=`grep -m 1 "Your IP address .* is already downloading a file." "$TMPFILE"`
    NOTFOUND=`grep -m 1 "The file could not be found." "$TMPFILE"`
   
    # "Free user" gomb
    if [ -n "$GOMBSOR" ]; then
        GOMB=`echo "$GOMBSOR" | sed -ne 's/^.*action="\([^"]*\)".*$/\1/p'`
        if [ -z "$GOMB" ]; then
            echo "Nem találom a \"Free user\" gombot ..."
            return "$HIBA"
        fi
        get_rapidshare "$GOMB" "--post-data='dl.start=Free'" "Free user gomb lenyomására jövő oldal letöltése"
    # kis várakozás
    elif [ -n "$KISVAR" ]; then
        VAR=`grep -m 1 "var c=[[:digit:]]*;" "$TMPFILE" | sed -ne 's/^.*=\([[:digit:]]*\);.*$/\1/p'`
        LINK=`grep -m 1 "input checked" "$TMPFILE" | sed -ne 's/^.*document.dlf.action=\\\\'\''\([^\\\\]*\)\\\\.*$/\1/p'`
       
        if [ -z "$VAR" ]; then
            echo "Nem találom a rövid várakozás idejét ..."
            return "$HIBA"
        fi
        if [ -z "$LINK" ]; then
            echo "Nem találom a linket ..."
            return "$HIBA"
        fi
       
        # rövid várakozás
        varakozas "$VAR"
       
        # letöltés (a rapidshare-n nem lehet folytatni a félbeszakadt letöltést)
        # ezért megvizsgáljuk, hogy a file teljesen megvan-e, ha nem, akkor letöltjük újra
        if teljes "$TARGETDIR" "$LINK"; then
            echo "A file már le volt töltve, nem töltöm le újra: $LINK"
            return "$OK"
        fi
       
        if ! try "wget --limit-rate=\"$LIMIT_RATE\" -P \"$TARGETDIR\" \"$LINK\""; then
            echo "Állomány letöltése nem sikerült: $LINK"
            return "$HIBA"
        fi
    # nagy várakozás
    elif [ -n "$NAGYVAR" ]; then
        VAR=`grep -m 1 "Or try again in about [[:digit:]]* minutes." "$TMPFILE" | sed -ne 's/^.*about \([[:digit:]]*\) .*$/\1/p'`
        if [ -z "$VAR" ]; then
            echo "Nem találom a hosszú várakozás idejét!"
            return "$HIBA"
        fi
        VAR=`expr "$VAR" "*" 60`
        # hosszú várakozás
        varakozas "$VAR"
       
        get_rapidshare "$BURL" "$WGETPARAM" "$SZOV"
       
    # hibás link, vagy már törölték
    elif [ -n "$NOTFOUND" ]; then
        echo "A file nem található. Hibás a link, vagy már törölték: $BURL"
        return "$HIBA"
       
    # már töltünk le erről az IP címről, kilépés
    elif [ -n "$DUPLA" ]; then
        IPADDR=`echo "$DUPLA" | sed -ne 's/^.*address //' -e 's/ is.*$//p'`
        echo "Erről az IP címről ($IPADDR) már töltünk le. A másik töltés befejeződése után újra el lehet indítani ezt."
        exit "$HIBA"
       
    # hiba, nem lekezelt ág, kilépés
    else
        echo "get_rapidshare nem lekezelt ág: $TMPFILE"
# ideiglenes megoldás ----------------------------------------------------------       
#        exit "$HIBA"
        varakozas 60
        get_rapidshare "$BURL" "$WGETPARAM" "$SZOV"
# ideiglenes megoldás ----------------------------------------------------------       
    fi
}

# letöltés a href.hu-ról
function get_href {
    if ! try "wget -S --spider \"$URL\" 2>\"$TMPFILE\"" "Ideiglenes állomány letöltése"; then
        echo "Ideiglenes állomány letöltése nem sikerült: $URL"
        return "$HIBA"
    fi
    DATAURLSOR=`grep -m 1 "window.location.href" "$TMPFILE"`
    if [ -z "$DATAURLSOR" ]; then
        echo "Nem találom az ideiglenes állományban a linket (window.location.href)"
        return "$HIBA"
    fi
}

# letöltés az fsx.hu-ról
# trükkös ellenőrzések vannak benne szerveroldalon az automatikus letöltés nehezítésére
function get_fsx {
    FSXSERVER="http://www.fsx.hu/"
   
    # kell egy ideiglenes állomány a sütiknek
    TMPCOOKIE="$TMPFILE.cookie"
   
    # Úgy kell letölteni, mintha egy böngészőben néznénk az oldalt, pl. Linux-os Mozilla
    HEADERS=" --user-agent=\"Mozilla/5.0 (X11; U; Linux i686; hu-HU; rv:1.9.0.6) Gecko/2009020409 Iceweasel/3.0.6 (Debian-3.0.6-1)\" "
   
    if ! try "wget -qT 30 --cookies=on --keep-session-cookies --save-cookies \"$TMPCOOKIE\" $HEADERS -O \"$TMPFILE\" \"$URL\"" "Ideiglenes állomány letöltése"; then
        echo "Ideiglenes állomány letöltése nem sikerült: $URL"
        rm -f "$TMPCOOKIE"
        return "$HIBA"
    fi
   
    # az oldalon lévő tartalom letöltése (képek, hátterek), szerveroldalon figyelik!
    # csak a header-eket kérjük le, magát a tartalmat nem, mintha már a böngésző cache-sében volna.
    TARTALOM=`sed -ne 's/^.*<[^>]*background *= *"\([^"]*\)"[^<]*>.*$/\1/gp' -ne 's/^.*<[^>]*img *src *= *"\([^"]*\)"[^<]*>.*$/\1/gp' -ne 's/^.*<[^>]*rel *= *"stylesheet".*href *= *"\([^"]*\)"[^<]*>.*$/\1/gip' "$TMPFILE" | sort | uniq | grep -iv "^http://" | sed -e 's,^\| , '"$FSXSERVER"',g'`;
    echo "Oldalon lévő tartalom lekérése ..."
    eval wget -q --cookies=on --keep-session-cookies --load-cookies "$TMPCOOKIE" --spider $TARTALOM
   
    # "Ingyen tovább" gomb oldalának letöltése
    FSXURLSOR=`grep -m 1 "download.php" "$TMPFILE"`
    if [ -n "$FSXURLSOR" ]; then
        echo "\"Ingyen tovább\" gomb oldalának letöltése ..."
        FSXURL="$FSXSERVER`echo "$FSXURLSOR" | sed -ne 's/^.*href="\([^"]*\)".*$/\1/ip'`"
    fi
    varakozas 3         # 3 sec. várakozás, mielőtt továbbkattintunk
   
    # várakozás az előttünk lévő letöltőkre
    REFRESH=1
    while true; do
        if ! try "wget -qT 30 --cookies=on --keep-session-cookies --load-cookies \"$TMPCOOKIE\" $HEADERS -O \"$TMPFILE\" \"$FSXURL\""; then
            echo "Ideiglenes állomány letöltése nem sikerült: $URL"
            rm -f "$TMPCOOKIE"
            return "$HIBA"
        fi
       
        # itt kivesszük, hogy hány mp-enként kell frissíteni, és milyen oldalra
        if [ "$REFRESH" == "1" ]; then
            # A refresh meta tagból kivesszük, hogy hány mp-enként kell frissíteni,
            # és hová, ha nem erre az oldalra
            VARSEC=`sed -ne 's/^.*<META.*HTTP-EQUIV *= *"refresh".*content *= *"\([[:digit:]]*\)[ ;"].*/\1/ip' "$TMPFILE"`
            if [ -z "$VARSEC" ]; then
                echo "Nem találom az oldal frissítésének idejét!"
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
           
            UJURL=`sed -ne 's/^.*<META.*HTTP-EQUIV *= *"refresh".*content *= *"[[:digit:]]*; *URL *= *\([^" ]*\)[ "].*$/\1/ip' "$TMPFILE"`
            if [ -z `echo "$UJURL" | sed -ne 's@^\(http://[^/]*\)/.*$@\1@ip'` ]; then
                # ha nincs az elején http://szervenév, akkor odaírjuk az fsx-es szervert
                UJURL="$FSXSERVER$UJURL"
            fi
           
            if [ -z "$UJURL" -o "$UJURL" == "$FSXURL" ]; then
                REFRESH=""      # itt már önmagát hívja (mivel dinamikus lap, elvileg változhat, de nem fog)
            else
                FSXURL="$UJURL"
            fi
        fi
       
        if grep -iq "a kiv.lasztott f.jl let.lt.s.t megkezdheted" "$TMPFILE"; then
            echo
            FSXSERVER=`sed -ne 's/^.*<a .*id='\''dlink'\'' .*href="\([^"]*\)".*$/\1/p' "$TMPFILE"`
            if [ -z "$FSXSERVER" ]; then
                echo "A letölő URL szerverét nem találom: id='dlink'"
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
            VEGSOURL=`sed -ne 's/^.*elem\.href *= *elem\.href *+ *"\([^"]*\)".*$/\1/p' "$TMPFILE"`
            if [ -z "$VEGSOURL" ]; then
                echo "A letöltendő URL-t nem találom: elem.href = elem.href + \"URL\""
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
            VEGSOURL="$FSXSERVER$VEGSOURL"
           
            if teljes "$TARGETDIR" "$VEGSOURL"; then
                echo "A file már le volt töltve, nem töltöm le újra: $VEGSOURL"
                rm -f "$TMPCOOKIE"
                return "$OK"
            fi
            if ! try "wget -T 30 --cookies=on --keep-session-cookies --load-cookies \"$TMPCOOKIE\" $HEADERS --limit-rate=\"$LIMIT_RATE\" -P \"$TARGETDIR\" \"$VEGSOURL\""; then
                echo "Az állomány letöltése nem sikerült: $VEGSOURL"
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
           
            rm -f "$TMPCOOKIE"
            return "$OK"
        else
            SZALDB=`sed -ne 's/^.*ingyenes let.lt.-sz.lak:.*<strong> *\([[:digit:]]\+ *\/ *[[:digit:]]\+\)db.*$/\1/ip' "$TMPFILE"`
            FELHDB=`sed -ne 's/^.*<strong>\([[:digit:]]\+\)<\/strong>.*felhaszn.l. van el.tted.*$/\1/ip' "$TMPFILE"`
            if [ -z "$FELHDB" ]; then
                echo -e "\nHiba: nem találom az előttünk lévő felhasználók számát!"
                rm -f "$TMPCOOKIE"
                return "$HIBA"
            fi
           
            echo -ne "Felhasználók előttünk: $FELHDB (szálak: $SZALDB) ...          \r"
            sleep $VARSEC
        fi
    done
}

# Megvizsgáljuk, hogy egy file le van-e töltve teljesen
# Paraméterek:  1. directory, ahová menteni kell
#               2. URL, ahonnét tölteni kell
# Visszatérési érték: $OK = le van töltve, $HIBA = nincs letöltve
function teljes {
    DIR="$1"
    URL="$2"
   
    # header lekérése
    echo -n "Header lekérése ... "
    if ! try "wget -S --spider \"$URL\" 2>\"$TMPFILE\""; then
        echo "nem sikerült."
        return "$HIBA"
    fi
    echo "sikerült."
   
    # a filenév
    # FNEV=`sed -ne 's/^ *=> \`\([^'\'']*\)'\''.*$/\1/gp' "$TMPFILE"`
    FNEV=`sed -e '2!d' -e 's/^ *=> *//g' -e 's/\`//g' -e 's/'\''.*$//g' -e 's@^.*/@@g' "$TMPFILE"`
    if [ -z "$FNEV" ]; then
        # nem találja a filenevet, letöltjük újra
        echo "Nem találom a filenevet!"
        return "$HIBA"
    fi
   
    PFNEV="$DIR/$FNEV"
    if [ ! -e "$PFNEV" ]; then
        # nem létezik a file, le kell tölteni
        return "$HIBA";
    fi
   
    # a file-t más használja, kilépés
    if lsof -- "$PFNEV" >/dev/null 2>&1; then
        echo "A file-t más is használja: $PFNEV"
        exit "$HIBA"
    fi
   
    # a file mérete byte-ban
    LEN=`sed -ne 's/^ *content-length *: *//gpi' "$TMPFILE"`
    if [ -z "$LEN" ]; then
        echo "Nem találom a file hosszát!"
        return "$HIBA"
    fi
   
    # a meglévő file mérete byte-ban
    FHOSSZ=`ls -l "$PFNEV" | sed -ne 's/^[^ ]* *[^ ]* *[^ ]* *[^ ]* *//' -e 's/ .*$//p;q'`
    if [ "$LEN" -eq "$FHOSSZ" ]; then
        # teljes hosszan le van töltve, nem kell letölteni
        return "$OK"
    fi
   
    # a file létezik, de nem teljesen volt letöltve
    rm -f "$PFNEV"
    return "$HIBA"
}

# Várkozás
# Paraméterek:  1. a várakozás ideje másodpercben
#               2. ahol éppen járunk (híváskor nem kell megadni)
function varakozas {
    MAX="${1:-0}"
    IDO="${2:-0}"
    echo -ne "\rVárakozás $IDO/$MAX mp ..."
    if [ "$IDO" -ge "$MAX" ]; then
        echo ""
        return
    fi
    sleep 1
    varakozas "$MAX" "`expr \"$IDO\" + 1`"
}

# Parancsot próbál végrehajtani
# Paraméterek:  1. a végrehajtandó parancs
#               2. kiírandó szöveg (default üres, és nem ír ki semmit)
#               2. ennyiszer próbálkozik maximum (default $DEFTRY)
#               3. ennyiedik próbálkozás (ezt nem kell átadni, csak a rekurzió miatt kell)
function try {
    PARANCS="$1"
    SZOVEG="$2"
    MAXDB="${3:-$DEFTRY}"
    DB="${4:-1}"
   
    if [ -n "$SZOVEG" ]; then
        echo "$SZOVEG ($DB / $MAXDB) ... "
    fi
   
    if eval "$PARANCS"; then
        return "$OK"
    fi
    if [ "$DB" -lt "$MAXDB" ]; then
        try "$PARANCS" "$SZOVEG" "$MAXDB" "`expr \"$DB\" + 1`"
    else
        return "$HIBA"
    fi
}

# Szervertől függően meghív egy letöltő függvényt
function letolt {
    echo "-----------------------------------------------------------------------"
    echo "Lekérés: $URL"
    SERVER=`echo "$URL" | sed -e 's@^.*http://@@' -e 's@/.*$@@'`
    case "$SERVER" in
        "$SERVER_DATA")  get_data;;
        "$SERVER_RAPID") get_rapidshare "$URL";;
        "$SERVER_HREF")  get_href;;
        *."$SERVER_FSX") get_fsx;;
        *) echo "Nem implementált szerver: \"$SERVER\"";;
    esac
}

if [ $# -lt 1 ]; then
    echo "A script használata:"
    echo "`basename \"$0\"` lista_file [mentési_könyvtár] [parancs]"
    exit "$HIBA"
fi
   
URLFILE="$1"
if [ ! -r "$URLFILE" ]; then
    echo "Az állományt nem tudom olvasni: \"$URLFILE\""
    exit "$HIBA"
fi

TARGETDIR="${2:-`pwd`}"
if [ ! -d "$TARGETDIR" ]; then
    echo "A könyvtár nem létezik: \"$TARGETDIR\""
    exit "$HIBA"
elif [ ! -r "$TARGETDIR" -o ! -w "$TARGETDIR" -o ! -x "$TARGETDIR" ]; then
    echo "A könyvtárra nincs meg az olvasás, írás és keresés jogosultság: \"$TARGETDIR\""
    exit "$HIBA"
fi

COMMAND="$3"

TMPFILE=`mktemp -q -t get_files.XXXXXXXX`
if [ -z "$TMPFILE" ]; then
    echo "Ideiglenes állomény létrehozása nem sikerült"
    exit "$HIBA"
fi

# más karakterkészlettel rendelkező HTML file-okat is tudjunk kezelni
export LANG=C

echo "Filmletöltés a \"$TARGETDIR\" könyvtárba."
shopt -s nocasematch
for URL in `grep -i "http://" "$URLFILE"`; do
    letolt "$URL"
done
rm -f "$TMPFILE"

# ha volt parancs a befejés után, akkor végrehajtjuk
if [ -n "$COMMAND" ]; then
    eval "$COMMAND"
fi


vas. ápr. 05, 2009 13:29
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
nehezgep írta:
Sparow2 írta:
nehezgep
Hétvégén ha jut rá időm, akkor beleteszem. De nem ígérek most semmit.
Előbb-utóbb benne lesz.


Köszönöm szépen!

Nos, ma kezdtem el.
Most lesz pár szabad napom, és erre is töltök egy kis időt.
Egyelőre fura valami, nem egészen úgy megy, ahogy kéne ... böngészőből szépen csökken az előttem levők száma, amíg scriptből hívva, wget-tel van, hogy növekszik, meg elveszik a session. Pedig küldöm a sütit, már arra is gyanakodtam, hogy a wget valamit rosszul ment a sütiben, és kézzel manipuláltam a request headert-t, mintha benne volna a süti.
Ha olyan sessionra wget-elek, amit már böngészővel megnéztem, akkor viszont OK.
Az oldalon viszont nincs semmi, se java kód, ami visszaküldene még egy kérést, sz'al egyelőre nem értem, hogyan különböztetik meg, hogy böngészővel vagy wget-tel csinálom-e ...

Szerk: Megvan. Le kell kérni az oldalon lévő tartalmat (képeket, CSS-t), mintha a böngésző kérné le. (Nem fontos letölteni is, elég csak a header-eket lekérni, mintha már a böngésző cache-sében volnának)
Már tesztelem, csak ez időigényes, várni kell, amíg odaér, hogy elfogynak a letöltők.


kedd márc. 31, 2009 14:43
Profil Privát üzenet küldése
vas-tag

Csatlakozott: kedd márc. 24, 2009 15:48
Hozzászólások: 2
Hozzászólás 
Bocsánat a lényeg lemaradt data.hu ról van szó :d


kedd márc. 24, 2009 16:01
Profil Privát üzenet küldése
vas-tag

Csatlakozott: kedd márc. 24, 2009 15:48
Hozzászólások: 2
Hozzászólás 
Hali

Nagyon jo a script, kérdésem h regisztrált felhasználóként vhogy meg lehet e oldani h a login/passt közölje (távoli linuxos gépen használnám)
próbáltam beleirni a scriptbe postdata val meg wget paraméterezéssel, de sajna nem értek hozzá nagyon (manualt azért elolvasom:D)

ha lenne bárkinek vmi jó ötlete szivesen venném


kedd márc. 24, 2009 15:56
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. márc. 11, 2009 23:32
Hozzászólások: 3
Hozzászólás 
Köszönöm a gyors segítséget!
Így már működik a data.hu -s rész is.


pén. márc. 13, 2009 17:06
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
A megfelelő sort erre kell cserélned:
Kód:
DATAURL=`echo "$DATAURLSOR" | sed -ne 's/^.*href="\([^"]*\)".*$/\1/p'`


Jelentése: cseréld le a sor elejétől a href=" után kezdődő karaktersorozatot, amelyben nincs " (idézőjel) egy "-től a sor végéig úgy, hogy az idézőjelek közötti rész maradon meg belőle, és írd ki az eredményt.


pén. márc. 13, 2009 11:09
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. márc. 11, 2009 23:32
Hozzászólások: 3
Hozzászólás 
Köszönöm a választ!

A SED paraméterezésével nem igazán vagyok tisztában. Annyit sikerült elérnem, hogy kiszedi a grep azt a sort amelyben az letöltési link van, általában így néz ki:
<span class="download_it"><a href="http://ddl2.data.hu/get/0/90066/T_and_Jerry_2evad-01.part1.rar" onmousedown="reload_median();" onmouseup="return false;">Letöltés indítása</a></span>

Ebből a sorból kellene ki szedni a linket, azaz a: http://ddl2.data.hu/get/0/90066/T_and_J ... .part1.rar

De ez az ami nekem nem sikerül, a sed opcióit nem nagyon értem.


csüt. márc. 12, 2009 18:01
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
orenas

Ezt a sor kellene átírni:
Kód:
 DATAURL=`echo "$DATAURLSOR" | sed -ne 's,^.*'\''\(http://.*\)'\''.*$,\1,p'`


Pontosan nem tudom, mire, mert még nem néztem meg. De szóltak már, hogy a data.hu megváltozott.

nehezgep
Bocs a késésért!
Igazság szerint kiment a fejemből a kérésed, de most hétvégén fogok vele foglalkozni.


csüt. márc. 12, 2009 12:56
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. márc. 11, 2009 23:32
Hozzászólások: 3
Hozzászólás data.hu változás
Egy kis gondom akadt a data újításával. A régi scriptben sikerült át írni a grep részét és most már a megfelelő sort választja ki, de sed paramétereit nem igazán értem és így jelen álapotában leál az alábbi hiba üzenetel:
Nem találom az URL-t a linkben.

A data -s rész:

# letöltés a data.hu-ról
function get_data {
if ! try "wget -qO \"$TMPFILE\" \"$URL\"" "Ideiglenes állomány letöltése"; then
echo "Ideiglenes állomány letöltése nem sikerült: $URL"
return "$HIBA"
fi
DATAURLSOR=`grep -m 1 "download_it.....href=" "$TMPFILE"`

# ez a sor let módosítva

if [ -z "$DATAURLSOR" ]; then
echo "Nem találom az ideiglenes állományban a linket"
return "$HIBA"
fi
DATAURL=`echo "$DATAURLSOR" | sed -ne 's,^.*'\''\(http://.*\)'\''.*$,\1,p'`

if [ -z "$DATAURL" ]; then
echo "Nem találom az URL-t a linkben"
return "$HIBA"
fi

if ! try "wget --limit-rate=\"$LIMIT_RATE\" -cP \"$TARGETDIR\" \"$DATAURL\""; then
echo "Állomány letöltése nem sikerült: $DATAURL"
return "$HIBA"
fi
return "$OK"
}

A SED megfelelő módosításához kérek egy kis segítséget, ha megoldható. Előre is köszönöm a válaszokat.

UI.: a szeren még nagyon kezdő vagyok


szer. márc. 11, 2009 23:44
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szomb. jan. 24, 2009 2:00
Hozzászólások: 3
Hozzászólás 
Sparow2 írta:
nehezgep
Hétvégén ha jut rá időm, akkor beleteszem. De nem ígérek most semmit.
Előbb-utóbb benne lesz.


Köszönöm szépen!


pén. feb. 13, 2009 15:59
Profil Privát üzenet küldése
arany tag
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 389
Tartózkodási hely: Műhely
Hozzászólás 
Ok köszönöm.


pén. feb. 13, 2009 14:58
Profil Privát üzenet küldése
a fórum lelke
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 6712
Hozzászólás 
Szerintem ezt te magad nem piszkálhatod.
A VoIP-ot a szolgáltató szerelői állítják be.
Neked csak poweruser hozzáférésed lesz, azzal nem férsz a HGW-n belül ilyesmihez. Telefonnál legfeljebb a hívásokat láthatod.
Netes dolgokat, wifit tudsz állítani. Vagy annyi, hogy kihúzod a tápot a HGW-ből és újraindítod. A reset nem feltétlen egészséges.
Ha nem oké valami :arrow: call 1412. :wink:


csüt. feb. 12, 2009 21:53
Profil Privát üzenet küldése
arany tag
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 389
Tartózkodási hely: Műhely
Hozzászólás 
Üdv!
1 kicsit OFF is meg nem is.
speedtouch modemnél, hogyan kell beálítani a telefont??
A net már megy .
Bár tegnap elött próbálkotam a nettel is és az sem ment.
MA pedig elsőre.
Állítólag a "kedves" ügyfél beszélt velük és karbantartás folyt éppen azért nem sikerült.
Igaz telefonkészülék nincs a lakásban de a Voice led nem világít vagy villog és így nem tökéletes.
Bár nekem így is jó lenne. :)
Köszönöm előre is.


csüt. feb. 12, 2009 21:27
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
nehezgep
Hétvégén ha jut rá időm, akkor beleteszem. De nem ígérek most semmit.
Előbb-utóbb benne lesz.


csüt. feb. 12, 2009 14:30
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szomb. jan. 24, 2009 2:00
Hozzászólások: 3
Hozzászólás 
Szia!
Gratulálok a scripthez! Olyan kérdésem lenne, hogy FSX oldaláról lehet letölteni sorozatokat ingyen. Természetesen ott is várakozni kell. Megoldható lenne hogy a scriptbe bekerüljön egy olyan rész is, hogy használható legyen FSX-nél is?

Tehát innét szeretnék letölteni:
http://www.jancsiweb.com/sfree/start.php

(kiválasztasz egy sorozatot, aztán egy évadot vagy csak egy részt és eljutsz az fsx linkekhez)


csüt. feb. 12, 2009 1:53
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Örülök, hogy ennyire tetszik :)

neste írta:
szóval köszi még egyszer!

Nincs mit! :)


pén. jan. 23, 2009 18:16
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. jan. 21, 2009 13:47
Hozzászólások: 9
Hozzászólás 
működik! :P ilyen extrákra nem is számítottam, amikor letöltöttem a scripted :wink: ubuntu intrepid ibexet használok egyébként szóval az ebben lévő wgethez jó ez a módosítás.

megcsináltam a másik változtatást is amit írtál a rövid várakozásra, majd figyelem beleütközik e és mi történik, de én még soha nem láttam ilyet amúgy.

egyébként baromi kényelmes a script használata, egy csomó időt megspórol és alig eszik erőforrást. tök kényelmes, hogy sima text fileokba lehet menteni ami kell és amelyiket épp tölteni akarom azzal használom a scriptet.

szóval köszi még egyszer!


pén. jan. 23, 2009 10:42
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Persze, nyugodtan közzé lehet tenni, engem nem zavar. De még vannak benne tökéletesítésre szoruló részek.

Nálad az a baj, amit fentebb írtam, hogy a file neve előtt nincs => jel.
Ezt kell átírnod:
Kód:
FNEV=`sed -ne 's/^ *=> \`\([^'\'']*\)'\''.*$/\1/gp' "$TMPFILE"`

erre:
Kód:
FNEV=`sed -e '2!d' -e 's/^ *=> *//g' -e 's/\`//g' -e 's/'\''.*$//g' -e 's@^.*/@@g' "$TMPFILE"`


A fenti módosítás után mindkét esetben jó lesz (az eredetire is és remélem a Tiédre is, mert a wget pontos outputját nem látom, csak ezt az 1 sort, ami az általad beírt részből kiderült).
Ezt úgy tudod kipróbálni, hogy ha elkezdesz letölteni, és kész az első file teljesen, akkor a 2. file-ra való várakozás közben megállítod a scriptet --Ctrl+C--, és utána újból elindítod. (Ekkor ami várakozás a 15 percből hátravan azt le kell várni ugyanúgy, mintha nem szakítottad volna meg, majd az első file letöltésekor azt kell kiírnia a scriptnek, hogy ezt már letöltötte, és utána rögtön a második file letöltésére kell ugrania. Enélkül a javítás nélkül újra elkezdené letölteni az első file-t is.)

Most próbálgatás közben belefutottam a "no slot"-ba, el is tettem, ezért már ne fáradj, Target!
Majd később beleírom azt is, most csak egy ideiglenes módosítás, hogy ne álljon meg.
Ott a script direkt megállt, hogy a temp file megmaradjon, és lehessen nézegetni.
A nem lekezelt ágba egy kis módosítás, hogy 1 perc múlva újra megpróbálja, ha a "no slot" (vagy bármi más eddig nem lekezelt hiba) jött be:
Az
Kód:
        echo "get_rapidshare nem lekezelt ág: $TMPFILE"
        exit "$HIBA"

helyére a következő néhány sor kell:
Kód:
        echo "get_rapidshare nem lekezelt ág: $TMPFILE"
# ideiglenes megoldás ----------------------------------------------------------       
#        exit "$HIBA"
        varakozas 60
        get_rapidshare "$BURL" "$WGETPARAM" "$SZOV"
# ideiglenes megoldás ----------------------------------------------------------       


csüt. jan. 22, 2009 20:04
Profil Privát üzenet küldése
vas-tag

Csatlakozott: szer. jan. 21, 2009 13:47
Hozzászólások: 9
Hozzászólás 
hát nem igazán értek, ehhez, hogy mit, hogyan kéne átírnom. ha esetleg megtudod nekem mondani azt megköszönném. de már így is teljesen szuper a dolog. egyébként szabad máshol közzétenni a dolgot? esetleg az elejére tehetnél valami dolgot, hogy te csináltad, vagy egy linket ide.

így néz ki nálam egy ciklus:
Kód:
-----------------------------------------------------------------------
Lekérés: http://rapidshare.com/files/60734029/Az_ember_gyermeke__Children_of_Men_.part2.rar
Ideiglenes állomány letöltése (1 / 3) ...
Free user gomb lenyomására jövő oldal letöltése (1 / 3) ...
Várakozás 960/960 mp ...
Free user gomb lenyomására jövő oldal letöltése (1 / 3) ...
Várakozás 50/50 mp ...
Header lekérése ... sikerült.
Nem találom a filenevet!
--2009-01-22 15:24:25--  http://rs113tl2.rapidshare.com/files/60734029 5523620/Az_ember_gyermeke__Children_of_Men_.part2.rar
Resolving rs113tl2.rapidshare.com... 80.239.236.114
Connecting to rs113tl2.rapidshare.com|80.239.236.114|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 102760448 (98M) [application/octet-stream]
Saving to: `/home/gab/Az_ember_gyermeke__Children_of_Men_.part2.rar'

100%[==================================================>] 102,760,448  206K/s   in 7m 55s 

2009-01-22 15:32:20 (211 KB/s) - `/home/gab/Az_ember_gyermeke__Children_of_Men_.part2.rar' saved [102760448/102760448]


csüt. jan. 22, 2009 15:51
Profil Privát üzenet küldése
a fórum lelke
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 6712
Hozzászólás 
Igen, pont ez volt, hogy nincs szabad slot, és többször is a 2 perc várakozást írta.
Persze az oldalt nem mentettem el. :wink: No majd legközelebb, ha belefutok.
Eddig nem tapasztaltam ilyet, ez is úgy vasárnap délután lehetett.


csüt. jan. 22, 2009 13:10
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
Még régről emlékszem, hogy volt ilyen ... régebben volt egy scriptem, de elveszett, és újra kellett írni.
Ha megvan esetleg a várakozásról szóló filed, akkor idemásolhatnád a HTML-ből azt a részletet, ahol valami olyasmit írnak (persze angolul írják), hogy "free usereknek nincs szabad slot" és azt a részt, ahol be van írva, hogy hány percet kell várakozni.

Az nem baj, ha az idő lejárta után tovább kell várakozni, mert ugyanezt a függvényt hívja meg utána, és akkor újra a "no slotos" ágba csúszik be, mint elsőre. Egész amíg le nem jár a várakozás teljesen.


csüt. jan. 22, 2009 12:24
Profil Privát üzenet küldése
a fórum lelke
Avatar

Csatlakozott: szer. márc. 24, 2004 13:43
Hozzászólások: 6712
Hozzászólás 
Nemrég én is belefutottam a Rapidon a free userek várakoztatásába.
2 percet írt, hogy szüneteljek, de többszörre is ugyanazt kaptam egy ideig. Várjak 2 percet.


csüt. jan. 22, 2009 12:15
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás 
neste írta:
Sparow2 írta:
Itt a kész script, amit még régebben ígértem:
Még lehetne benne egyszerűsíteni pár dolgot ...


nagyon köszi ezt a scriptet. baromi jó :)

az mit jelent egyébként, hogy rapidról töltve írja, hogy:
"Header lekérése ... sikerült.
Nem találom a filenevet!"
aztán végül rendben tölti, ahogy kell.
szóval csak kiváncsiságból kérdezem, mert jól működik teljesen.

Ott az a baj, hogy amikor a script megvizsgálná, hogy egy file-t letöltött-e teljesen, akkor nem találja a file nevét a wget outputjában. Ezért mindenképpen letölti újra.
Ez akkor baj, ha félbeszakítod a letöltést, és máskor folytatod (és az URL listás file-ból nem veszed ki a már letöltötteket), mert akkor a már letöltötteket is újra kezdi letölteni. Nálam pl. nincs ez a hiba, és csak azt tölti újra, amelyik file nincs teljesen letöltve (azt is csak azért, mert a rapidon félbeszakadt file letöltést nem lehet folytatni. De pl. data.hu-n bárhol megszakítom, utána simán folytathatom ugyanonnét).

Amelyik verzókat én használtam a wget-ből, ott olyan sor volt az outputban, hogy:
Kód:
                       => filenév


Meg kell nézned, hogy amelyik wget-et használod, az hogy írja ki a file nevét (letöltés közben látszik is pl.)
És módosítani kell a köv. sort, a wget-hez megfelelően:

Kód:
FNEV=`sed -ne 's/^ *=> \`\([^'\'']*\)'\''.*$/\1/gp' "$TMPFILE"`


Egyébként a script még nem teljes, mert vannak olyan esetek, amiket nem kezel le (ezért van a "hiba, nem lekezelt ág, kilépés" rész is, ekkor a temp állományt sem törli, hogy meg lehessen nézni, mi volt benne)
Pl. van, hogy a free user-eknek nem jut slot a rapidshare szerveren, és jön egy oldal, amiben ezt írják, és akkor is várakozni kell az odalon megadott ideig.
Csak én relatíve ritkán használom, és még ebbe nem futottam bele, ezért nem tudtam megnézni, hogy pontosan milyen az ilyen oldal (pl. hogy írják ki, hogy mennyi a várakozás) De a helye ott van a "le nem kezelt ág"-ban, ha egyszer jön ilyen, csak bele kell tennem.
Meg még ki tudja mik jöhetnek, amik még ritkábbak, és nem találkoztam velük.


csüt. jan. 22, 2009 12:01
Profil Privát üzenet küldése
gyémánt tag
Avatar

Csatlakozott: hétf. jún. 26, 2006 11:21
Hozzászólások: 2544
Hozzászólás OFF topic
Itt is elkelhet egy offolós téma ...


csüt. jan. 22, 2009 11:43
Profil Privát üzenet küldése
Hozzászólások megjelenítése:  Rendezés  
Hozzászólás a témához   [ 91 hozzászólás ]  Oldal Előző  1, 2

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 2 vendég


Nem nyithatsz témákat ebben a fórumban.
Nem válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.

Keresés:
Ugrás:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Magyar fordítás © Magyar phpBB Közösség