[Lugge] Re: wget e %20

  • From: asettico <asettico@xxxxxxxxxxxxxxx>
  • To: LUGGe <lugge@xxxxxxxxx>
  • Date: Tue, 03 Aug 2004 16:38:50 +0200

speleoalex wrote:

Sto cercando di fare il mirror di un sito con wget.
Tutti i caratteri "space" vengono convertiti in %20 quando vengono scritti sul disco.
Conoscete un modo per evitarlo e mantenere quindi i nomi con gli spazi?
... o almeno uno script che me li rinomini dopo essere stati scritti ...

Mi pare che non ci sia il modo per far mantenere gli "spazi" nei nomi (ne sono abbastanza certo, perché l'ho studiato abbastanza a fondo, ma qualche angolo ombroso è sicuramente essere rimasto). Anche se, pensandoci bene, è wget che converte gli spazi o il web server? Come si comporta un normale browser? Hai provato anche con Lynx?


Tornando a bomba, te la cavi molto facilmente con uno script, una volta terminata l'esecuzione:

find . -name '*%20*' | while read f; do
        mv $f $(echo $f | sed 's/%20/ /g')
done
find . -name '*.html' | while read f; do
        sed 's/%20/ /g' $f > $f.new && mv $f.new $f
done

Quest'ultimo ciclo implica che tu abbia utilizzato l'opzione -E di wget.

Okkio, perché è un'elaborazione appena abbozzata.
In realtà, per essere certo di sostituire _solamente_ i "%20" facenti parte di riferimenti esterni al file HTML (quindi valore di attributi href, src, ...) andrebbe affinata, previa analisi del codice della pagine, rigorosamente fatta "a okkio", data la facilità con cui si trova rumenta in giro per la rete...
A me capita abbastanza spesso di "filtrare" il prodotto di wget per "piegarlo" ai mie scopi.
--
asettico [ http://www.rossomaltese.it/ ]
GPG fingerprint [ BA20 8C8D 7712 9D9A 57F3 A96A A7BE 905C 1CB9 26BA ]


-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS/IT/O d++(-) s:+>: a34 C++$ ULAVH*++$>++++ P+ L+>++++ E--- W++(-)
N(++) o? K-? w(---) !O M@ V@ PS+@ PE- Y? PGP->++ t+++ 5? X++ R tv+ b+
DI(+) D++(---) G(-)>-- e>++++ h---() r++ y+++*
------END GEEK CODE BLOCK------


========----------

Prima di scrivere in m-list per favore leggi il regolamento
http://www.lugge.net/soci/index.php?link=manifesto

Archivio delle e-mail postate in lista
//www.freelists.org/archives/lugge/

Modifica dell'account sulla lista LUGGe
http://www.lugge.net/soci/index.php?link=manifesto.htm#list


Other related posts: