Sziasztok!
Szeretném bizonyos időközönként leszedni a met.hu honlapról a radartérképet a következő paranccsal (persze a hivatkozás mindíg más lesz, de ez most nem probléma):
wget http://www.met.hu/getfile.php?dp=d&u=1&f=YJFIeqqoqrwoaqiwys4GA --output-file=/tmp/radar.jpeg
Viszont így csak egy 2 bájtos állomány jön létre, maga a kép nem borul le. Van valakinek valami ötlete, hogy mi a fittyfene lehet a baja?
Köszi!
- 2152 megtekintés
Hozzászólások
Hát én a linkre kattintva egy üres fehér oldalt kaptam a FerifoX-ban ;~))
Biztos jó a link?
/mazursky
- A hozzászóláshoz be kell jelentkezni
Én is ráklikkeltem, nekem bejön a kép (szintén firefox)...
- A hozzászóláshoz be kell jelentkezni
+1
Nekem is üres oldal.
Mi a 2 bájtos állomány tartalma?
Ad valami hibaüzenetet a wget?
--
Ami elől menekülnek, az után szaladnak.
- A hozzászóláshoz be kell jelentkezni
Na akkor innentől kezd érdekessé válni a dolog... No akkor itt a lap, amiről a képet szedném:
http://www.met.hu/omsz.php?almenu_id=weather&pid=kepek&pri=3&mpx=0&kps=1
Még mindíg rejtély azonban, hogy miért jön be a kép nekem, és nektek miért nem?!
A 2 bájt konkrétan egy üres fájl, a wget hibátlanul lefut...
- A hozzászóláshoz be kell jelentkezni
Gond nélkül bejön a kép (Gentoo+FF)
- A hozzászóláshoz be kell jelentkezni
Miután elmentem erre a linkre, már a régi kép is megjelent. Előtte azt nem láttam. Gondolom ez lehet a gond a wget-el is.
- A hozzászóláshoz be kell jelentkezni
+1 Nálam is ez a helyzet, előtte nem működött a link (http://www.met.hu/getfile.php?dp=d&u=1&f=YJFIeqqoqrwoaqiwys4GA), most, hogy megnéztem a http://met.hu-ról a radartérképet működik.
Tipp: Az oldal valamiféle azonosítást alkalmaz.
_______________________________________________
Keep It Arch Linux | Simple Xfce | Stupid! Fluxbox
- A hozzászóláshoz be kell jelentkezni
Ha ezt alinket http://www.met.hu/getimg.php?dp=d&u=1&f=YJFIeqqoqrwoaqitys4GA megnyitod, és megnézed a forrást, semmi extra nincs benne...
- A hozzászóláshoz be kell jelentkezni
Ez eddig szép és jó, de vajh hogyan lehet kiküszöbölni? :-D Azonosítás... Akkor lesek egy forrást. :-)
- A hozzászóláshoz be kell jelentkezni
Először fehérkép, aztán kicsit belebarangoltam (én még nem is láttam ezt a site -ot - tetszik :). Aztán visszajöttem ide és most bejött!? Érdekes.
* Én indián vagyok. Minden indián hazudik.
- A hozzászóláshoz be kell jelentkezni
A shell értelmezi a & karaktert, ami miatt az előtte lévő parancs háttérben fog futni.
wget 'http://www.met.hu/getfile.php?dp=d&u=1&f=YJFIeqqoqrwoaqiwys4GA' --output-file=/tmp/radar.jpeg
- A hozzászóláshoz be kell jelentkezni
na most megpróbáltam így is ahogy írod, aposztrofokkal:
wget -vO ./radar.jpeg 'http://www.met.hu/getfile.php?dp=d&u=1&f=YJFIeqqoqrwoaqiwys4GA'
Ez az eredmény:
tuning@tuninggepe:~/bin$ wget -vO ./radar.jpeg 'http://www.met.hu/getfile.php?dp=d&u=1&f=YJFIeqqoqrwoaqiwys4GA'
--09:34:31-- http://www.met.hu/getfile.php?dp=d&u=1&f=YJFIeqqoqrwoaqiwys4GA
=> `./radar.jpeg'
IP keresés www.met.hu... 84.206.25.186
Connecting to www.met.hu|84.206.25.186|:80... kapcsolódva.
HTTP kérés elküldve, várom a választ... 200 OK
Hossz: nem megadott [text/html]
[ <=> ] 2 --.--K/s
09:34:31 (198.47 KB/s) - `./radar.jpeg' saved [2]
Tehát ismét 2 bájt... :-S
- A hozzászóláshoz be kell jelentkezni
Most látom, hogy van egy "Hoszz: nem megadott" üzenet a wget-től... Ez jelenthet problémát?
- A hozzászóláshoz be kell jelentkezni
Azt hiszem meg van a megoldás.
Az oldalnak fontos a PHPSESSID. Kinéztem azt, hogy milyen cookie van az oldalon és meg adtam a wgetnek.
wget --cookies=off --header "Cookie: PHPSESSID=ide a te hosszu phpsessid-d" "http://www.met.hu/getfile.php?dp=d&u=1&f=YJFIeqqoqrwoaqowys4GA" -O radar.jpg
- A hozzászóláshoz be kell jelentkezni
--save-cookies file
Save cookies to file before exiting. This will not save cookies that have
expired or that have no expiry time (so-called ‘‘session cookies’’), but
also see --keep-session-cookies.--keep-session-cookies
When specified, causes --save-cookies to also save session cookies. Session
cookies are normally not saved because they are meant to be kept in memory
and forgotten when you exit the browser. Saving them is useful on sites
that require you to log in or to visit the home page before you can access
some pages. With this option, multiple Wget runs are considered a single
browser session as far as the site is concerned.Since the cookie file format does not normally carry session cookies, Wget
marks them with an expiry timestamp of 0. Wget’s --load-cookies recognizes
those as session cookies, but it might confuse other browsers. Also note
that cookies so loaded will be treated as other session cookies, which means
that if you want --save-cookies to preserve them again, you must use
--keep-session-cookies again.--load-cookies file
Load cookies from file before the first HTTP retrieval. file is a textual
file in the format originally used by Netscape’s cookies.txt file.
[...]
nehany nap mulva valoszinuleg mar nem lesz jo a SESSIONID-ben tarolt session, es ujra semmit nem kapsz. Ezeket a wget kapcsolokat kihasznalva ketto db wget hivassal megoldhatod a problemat (az elso bejelentkezik es kap egy sessionid-t, amit eltarolsz, a masodikkal mehetsz a kepert).
Erdemes meg beallitani a referrert (--referer), es az UserAgentet (--user-agent) hogy ne szurjak ki hogy botbol csinalod.
asd
- A hozzászóláshoz be kell jelentkezni
Ez így működik, a cookie miatt a két letöltés egymás után:
wget -O /dev/null --save-cookies metcookie --keep-session-cookies 'http://www.met.hu/omsz.php'
wget -vO ./radar.jpeg --referer='http://www.met.hu/omsz.php' --load-cookies metcookie 'http://www.met.hu/getfile.php?u=1&f=YJFIeqqoqrwoaqowys4GA'
- A hozzászóláshoz be kell jelentkezni
Valóban, igen, valóban... Már csak az a kérdés, hogy honnan szedek majd mindíg új session id-t... :-)
- A hozzászóláshoz be kell jelentkezni
Lassú voltam... :-D Köszi mindenkinek!
- A hozzászóláshoz be kell jelentkezni