Oldalak letöltése és rekurzívan védett helyről

 ( bigacsiga | 2007. július 18., szerda - 21:18 )

Helló!

Egy oldalt kellene letöltenem és azt összefűznöm. Eddig megoldanám wgettel amit rekurzív paraméterekkel indítanék és összelinkeltetném az oldalakat. Node az a honlap amiről én beszélek jelszót kér. Ellenben úgy kér jelszót mint pl a hup.hu azaz nem a szabványos http-acces hanem egy formmal léphetek be felhasználónév és jelszó ellenében. Így böngészni tudom az oldalt de wgentek nem tudom megadni, hogy belépjen. Szerintem egy cookieban tárolja a belépéshez szükséges adatokat de ennyire már teljes a html/php tudományom. A kérdésem, hogy hogyan lehetne mégis letöltetni az oldalt?

Ui.: Firefoxhoz találtam egy downthemall extensiont ami letölti a kívánt lapokat de összefűzni nem tudja őket pedig nekem az is kell...

Köszi!

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

.

?

meggondoltam magam. magyarul most lusta vagyok segiteni :)
egy url-t loknel akkor konnyebb lenne, mert szvsz a form forrasa alapjan lehet,hogy megoldhato, de pici az esely.

>> Szerintem egy cookieban tárolja a belépéshez szükséges adatokat

loggolj be a sitera bugrókával, aztán load-cookies (mint wget --load-cookies="C:\Documents and Settings\soniq\Application Data\Mozilla\Firefox\Profiles\faszom\cookies.txt" http://hup.hu/node/42416)

man wget

--load-cookies=FILE load cookies from FILE before session.

hupnal is igy mukodik

udv Zoli

+1

ill me'g annyi hogy --keep-session-cookies is kell(het), sok helyen.

Tekintve hogy a wget-tel ez nem feltetlen mukodik jol (kb fel eve probaltam, gentoo-n ment, ubuntun meg nem) hasznalj curlt, ahol
szinten fel lehet kuldeni a cookiekat.

A masik meg az, hogy veszed a kezdolapon a formot, abbol az input mezoket, ami mondjuk "uname", meg "pass", es azt kuldod be, hogy
wget -r oldal.hu/xxx?uname=#uname#&pass=#pass#. Ez altalaban atmegy
ha az oldal php-s vagy hasonlo koszonhetoen az require/include es a $_GLOBALS-nak, azaz pontosan nem tudom mi ezeknek a neve.

Udv: axt

anno en httracket hasznaltam ilyen celra:
http://en.wikipedia.org/wiki/Httrack

Tyrael

Hi.

En is csinaltam ilyet anno, szamomra trivialisnak tunt.

A lenyeg, megnezem a html forrasat, kikeresed a mezoket amiket submitolni kell, es utana nyomsz ra 1 wgetet.

Pl:

wget --post-data 'user=geza&password=bela' --save-cookies /home/user/.wget/cookie.txt xxx.com/auth.php

utana pedig a mirrornal --load-cookies, vagy a .wgetrc-be berakod:

cookies=on
load_cookies=/home/user/.wget/cookie

Tudna valaki segíteni elindulni ennek az oldalnak a letöltésében:

https://ilias.gdf.hu/login.php?target=&soap_pw=&ext_uid=&cookies=nocookies&client_id=ilias-ha&lang=hu

Gyanítom hogy wget nem jó, hanem curl fog kelleni.

Ha jóval egyszerűbb lenne belépve látni hogy ami kell nekem (egyébként rekurzívan a pdf-ek) azt hogyan lehetne leszivattyúzni küldjetek privátot.

----------------------------
színes ingyen domain domain

Szerintem rosszul gyanítod, ez kivitelezhető wget-tel.

A következő parancsot használva

wget -r https://ilias.gdf.hu/login.php?username=#*****#&password=#******#

ilyen fájlok jönnek létre (a szemetet kivéve)

fájlnév: repository.php?ref_id=28881&cmd=sendfile
fájlméret: 5,8 MB
fájltípus: OLE2 compound document storage (application/x-ole-storage)

----------------------------
színes ingyen domain domain

Valakinek ötlete?

----------------------------
színes ingyen domain domain

curl
--
unix -- több, mint kód. filozófia.
Life is feudal

Superflynak van.
Használd a -np kapcsolót is a wgethez, úgy, hogy a link a pdf-ek mappájára mutasson, különben letöltöd az egész webhelyet.

A fentiekből egyértelműen látszik, hogy nincs "mappa", hanem a repository.php szüli meg a fájlokat. Erre talán a már említett downthemall ff plugin megoldás lehet, az hátha okosabb.

A mappát nem kell szó szerint érteni.
"Download and Store With a Different File name Using wget -O

By default wget will pick the filename from the last word after last forward slash, which may not be appropriate always.

Wrong: Following example will download and store the file with name: download_script.php?src_id=7701

$ wget http://www.vim.org/scripts/download_script.php?src_id=7701

Even though the downloaded file is in zip format, it will get stored in the file as shown below.

$ ls
download_script.php?src_id=7701

Correct: To correct this issue, we can specify the output file name using the -O option as:

$ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701"

Sok fajl van es az is cel hogy ne kelljen letoltes utan 200 pdfet megnyitni es ertelmes, a tartalomra mutato nevet adni nekik. (Ha jol ertettem amit irtal.) Raadasul a mappahierarchia megtartasa is "jo lenne".

----------------------------
színes ingyen domain domain

A pdfek tekinteteben az egesz webhelyre szuksegem van. Ezek szetszorva talalhatok rengeteg, az ILIAS feluleten mappaknak latszo izekben. Tehat az adott user szamara hozzaferheto teljes pdf tartalom kell nekem.

----------------------------
színes ingyen domain domain

Próbáld meg így ráengedni:
wget -r -A.pdf http://oldal neve/ (bár kétlem hogy jó lesz így)
Esetleg ha mappánként próbálod meg -np kapcsolóval, majd csoportonként átnevezni, az nem jó?

Az --accept -es megoldas nem jo.

A mappak csak vizualisan latszanak mappanak.

Pl:

Taneszköz tároló > Kategória BSc/BA alapképzés > Kategória Mérnök informatikus alapszak (BSc MI) > Kategória Digitális technika (BSc MI) > Kurzus 2010/11-I.félév > 4.hét

Cimsor tartalma a 4. het -be belepve:

http://ilias.gdf.hu/repository.php?ref_id=30321&cmd=view

----------------------------
színes ingyen domain domain

>A mappak csak vizualisan latszanak mappanak.
Már mondtam, nem szó szerint mappa, de mindnek van egy ID-je, azt írod be és -r -np.

A firefox Export cookies extensionjet hasznalva bejelentkezes utan kimentettem a cookiekat es az ezen topikban fentebb targyalt modon megadtam a wgetnek de ez mitsem valtoztat a helyzeten, ami ugyan nem tul meglepo, de probalkozom, na.

----------------------------
színes ingyen domain domain

Ha nagyon nem megy, akkor dobj fel egy flashgotot, meg valami letöltéskezelőt, amit támogat.

wget -r --content-disposition --load-cookies=/media/DATA/bmin.txt https://ilias.gdf.hu/login.php

Ugy tunik ez a megoldas, de ma mar csak ejjel tudom teljesen letesztelni.
Valoszinuleg a fajlmeret nem kerul elkuldesre es igy a wget azt mondja ra hogy az egy html...
----------------------------
színes ingyen domain domain

Nem bírok összehozni (sem wgettel, sem httrack-kel) egy parancsot (Ubuntun), amivel lejönne a https://ketcicakonyhaja.blog.hu rekurzívan, mindenestől. Tudtok segíteni? Mindig elakad néhány fájlnál a dolog.

(Egyelőre megoldottam bash-ből, wget + grep lépések egymásutánjával, de elég hajmeresztő, hogy erre nincs előre kész eszköz.)

Selenium + Python script?
---
Airconditioned terminal, do not open Windows.