Newsgroup: it.comp.os.linux.iniziare
Titolo: wget e sito asp

Ciao a tutti,
sto cercando di scaricare delle immagini satellitari da un sito. 
C'e' un'apposita form per recuperare le singole immagini presenti in 
archivio, ma avendo bisogno di tutte le immagini dall'inizio dell'anno a 
oggi (una immagine per ogni ora) cercavo un sistema piu' efficiente.
Ho scritto sulla loro help page una richiesta di aiuto ma non ho ricevuto 
risposta.
Ho trovato poi il modo di indirizzare direttamente ogni pagina contenente 
il singolo fotogramma orario, quindi pensavo di far fare a wget. 
Secondo voi e' lecito scavalcare il form per il recupero delle immagini 
(gratuite e liberamente scaricabili) o rischio che gli amministratori del 
sito si incazzino?
Ad ogni modo ancora non e' successo niente perche' ho problemi a far 
funzionare wget. L'url da risolvere e' del tipo:
http://www.tantebelleimmaginimeteo.com/image.ashx
?
sat=vis&type=history&country=it&time=201003010700&sessionid=bw5hxe45iel5yl45qgrinsry
(l'indirizzo e' inventato). La parte "time" contiene data e ora del 
fotogramma da scaricare, mentre l'id di sessione lo ricavo aprendo 
un'immagine con il form ed estraendo l'url dal sorgente della pagina. Al 
primo tentativo wget riconosceva solo la prima parte dell'indirizzo 
trascurando tutto dopo il punto interrogativo. Dopo aver letto il man 
senza capirci troppo, ho provato a sostituire i caratteri ? e & con i 
codici esadecimali corrispondenti. Ora se digito:
wget --restrict-file-names=windows -A.ashx.gif http://
www.tantebelleimmaginimeteo.com
%2fimage.ashx%3fsat=vis%26type%3dhistory%
26country%3dit%26time%3d201001040700%26sessionid%3q1qqx45sb0brkua2udz3bi4
--17:36:47--  
http://www.tantebelleimmaginimeteo.com/image.ashx
?
sat=vis&type=history&country=it&time=201001040700&sessionid%
253q1qqx45sb0brkua2udz3bi4/
Risoluzione di 
www.tantebelleimmaginimeteo.com/image.ashx
?
sat=vis&type=history&country=it&time=201001040700&sessionid%
3q1qqx45sb0brkua2udz3bi4 in corso... fallito: Name or service not known.
Quindi i caratteri vengono interpretati correttamente, ma ottengo 
comunque un errore.
Ho provato anche a passare i dati come --post-data:
wget -c -l 2 --restrict-file-names=windows http://
www.tantebelleimmaginimeteo.com
 --post-data "%2fimage.ashx%3fsat=vis%
26type%3dhistory%26country%3dit%26time%3d201001040700%26sessionid%
3q1qqx45sb0brkua2udz3bi4" 
ma mi scarica tutto tranne l'immagine che mi serve.
Qualcuno sa dirmi dove sbaglio? 
Ciao e grazie

 Qualcuno sa dirmi dove sbaglio?
nel non dare il link al sito, e nel non riportare gli errori che ottieni.

il contenuto del file robots.txt
[...]
che può essere ignorato con l'opzione
-e robots=off
com'è antipatica certa gente che vuole nascondersi le cose e costringe il 
navigatore a scervellarsi per scaricarle
-- 
Puppy Linux wiki:  
http://puppylover.netsons.org/dokupuppy
Puppy Linux Forum: 
http://www.italianpuppy.org/forum/
Windows me genuit, Ubuntu rapuere / tenet nunc Puppy Linux...

 (altre mille domande utili ad arrivare alla soluzione del problema)
Eh? Non conosco tua lingua.
Io pigiare bottoncino e immaginetta con Italia nuvolosa apparire su 
schermo :) 
Non so nulla di get post o ajax.
Anche se poi nel sorgente pagina c'e' una riga 
<body id="ctl00_body1">
    <form name="aspnetForm" method="post" action="history.aspx?
country=it" id="aspnetForm" style="margin: 0 0 0 0;">
Significa che il metodo di sottomissione e' post?

 -e robots=off
Ok grazie per i consigli, faro' come dici.

 Ok grazie per i consigli, faro' come dici.
sì,  e se ti arriva una denuncia mandagli anche il conto dell'avocato, 
visto che per lui "è sempre lecito".

 "è sempre lecito"
[...]
scaricare risorse da un server è normale (ecco gli effetti dei plagi 
memtali della associazioni per la difesa dei diritti d'autore); 
l'ingolfarlo consapevolmente con un eccesso di richieste che potrebbe 
procurare l'interruzione del servizio può essere reato; è una gara di 
intelligenza tra i creatori e gestori del server e l'utente privato che se 
vuole scaricarsi delle cose un motivo ce l'avrà
limitando e la velocità e il numero di richieste nell'unità di tempo 
eviterà che la sua attività venga interpretata come un potenziale attacco; 
a questo servono le millemilia opzioni di wget
-- 
Puppy Linux wiki:  
http://puppylover.netsons.org/dokupuppy
Puppy Linux Forum: 
http://puppylinux.ilbello.com


 metodo di sottomissione e' post?
sì, e ci sono anche diversi campi hidden che devi mandare con gli 
appropriati valori al server via post.
Inoltre il valore di tali campi viene modificato dal janascript prima del 
form submit.
Ad una prima occhiata non mi è sembrato di vedere richieste ajax,  ma ho 
visto troppo poco per essere sicuro.
Se vuoi fare qualche prova per capire quello che succede al momento del 
submit devi replicarti il sito in locale, cambiare la action del form per 
farla puntare al tiuo sito, stampare e controllare quello che ti è 
arrivato dal form via post.
FOrse , in quel caso riesci a tirarci fuori qualcosa, ma non è per niente 
assicurato.
Insomma, come form è abbastanza bastardo

 Insomma, come form è abbastanza bastardo
Me ne sono accorto :) Ad ogni modo penso che wget vada indirizzato su 
www.sat24.com/history.aspx
 e tutto il resto (la parte dopo il ?) vada 
incluso nel --post-data. Se riesco a metterci anche i valori dei campi 
hidden dovrebbe funzionare, che ne dici?
Inoltre sulla man di wget c'e' un esempio di trasmissione con il metodo 
post che fa uso di cookies, come faccio a sapere se devo usarli anche io?
Per la copia locale non so, probabilmente non saprei poi come condurre 
l'analisi e i tempi si allungherebbero di parecchio. Sarebbe interessante 
comunque vedere come funziona il marchingegno. 
Grazie e Ciao

 come faccio a sapere se devo usarli anche io?
ho controllato e sì, c'è il cookie di sessione, che oltretutto ti viene 
messo nell'url della immagine, altrimenti nisba.
quindi la procedura è:
wget "
http://www.sat24.com/history.aspx?country=it
" --keep-session-
cookies --save-cookies cookie.txt
e ti salvi il file con il cookie in cookie.txt
dentro ci trovi il valore del session id, una roba tipo:
mhen2b55qft4zq55y1wrmjbo
quindi una volta salvato quel file ti prendi la img facendo coincidere 
ilsession id dell'url con quello nell cookie, ed usando ovviamente il 
cookie che ti han dato:
wget "
http://www.sat24.com/image.ashx
?
sat=vis&type=history&country=it&time=201001111500&sessionid=mhen2b55qft4zq55y1wrmjbo" 
--load-cookies cookie.txt
a me funziona

 a me funziona
Anche a me! 
Grazie davvero, mi hai fatto risparmiare un sacco di tempo e lavoro.
Ora penso a come automatizzare la procedura.
Ciao!

 Grazie davvero, mi hai fatto risparmiare un sacco di tempo e lavoro. Ora
ok, se vuoi ti do le coordinate bancarie per il bonifico O_o