Hvad kan det bruges til?
wget er et værktøj til at hente (dele af) websteder ned på din egen maskine. Det kan for eksempel være fordi
- du skal lave en CD med SSLUG’s websted.
- du skal ud og sejle og ikke kan undvære referencemanualen til Ada.
- du foretrækker at bruge xv til at kigge 620 billeder fra Legoland i Californien igennem.
- du vedligeholder en afspejling af
<URL:http://www.opensource.org/>
Hvordan bruger man det?
Man bør, som altid, læse
-siden, hvis man er i tvivl. Jeg har lavet den til en udskriftsklar Postscript-fil (9 sider, 46 kb) for dem der foretrækker dokumentation på papir.man
Her er der et eksempel fra et program jeg kører ind imellem (med crontab):
wget --verbose \
--timestamping \
--recursive \
--level=0 \
--no-parent \
--background \
--input-file=websteder
--verbosebeder wget om at være snakkesalig
.--timestampingbetyder at wget undersøger om dokumenterne på webstedet er nyere end den lokale kopi inden de bliver hentet.--recursivehent også de sider siden henviser til og så videre.--level=0følg henvisninger i “uendelig mange” led. Hvis tallet er større end nul følges henvisninger i så mange led som tallet angiver.--no-parentfølg kun henvisninger udad. Hvis man starter med <URL:http://edb.jacob-sparre.dk/foredrag/> hentes <URL:http://edb.jacob-sparre.dk/> for eksempel ikke.--backgroundsætter programmet til at køre i baggrunden. Der skrives en logfil, der kommer til at hedde wget-log (hvis du ikke vælger et andet navn og der ikke allerede findes en fil med det navn).--input-file=webstedersætter wget til at læse en liste med websider fra filen websteder. Alternativt kan man give programmet en liste med adresser direkte på kommandolinien:
wget --mirror http://www.sslug.dk/ \
Home Page – End of 2023 campaign
I stedet for --timestamping og --recursive kan man nøjes med --mirror, der har samme effekt som de to argumenter sammen.
Hvilke problemer er der?
wget har desværre en kedelig vane med at ignorere kommentarafmærkning i HTML-dokumenter. Hvis vi ser på den følgende stump HTML:
<UL> <LI><A Href="linuxkommerciel.html">Kommercielt</A> <!--<LI><A Href="misc/">Forskelligt</A>--> <LI><A Href="kalender.html">Kalender</A> </UL>
Her vil wget forsøge at hente alle tre dokumenter, til trods for at henvisningen til misc/ er bortkommenteret. Det gør at wget for eksempel ikke er velegnet til at undersøge et websted for blinde henvisninger (noget jeg en overgang forsøgte at bruge det til).
Er der nogen der vil være med til at rette wget til så det tager hensyn til kommentarafmærkning i HTML-dokumenter?

