Overzicht
wget is een niet-interactieve netwerkdownloader die HTTP-, HTTPS- en FTP-protocollen gebruikt om bestanden van webservers te downloaden. Met name de recursieve downloadfunctie is een krachtig hulpmiddel voor het kopiëren van een hele of gedeeltelijke website naar de lokale schijf, zodat deze offline toegankelijk is, of voor het verzamelen van grote hoeveelheden van specifieke bestandstypen.
Belangrijkste kenmerken
- Spiegelen van de hele website en offline browsen
- Behoud van mapstructuur tot een opgegeven diepte
- Selectief downloaden van alleen specifieke bestandstypen
- Automatische conversie van links naar lokale bestandspaden na download
- Functie voor het hervatten van onderbroken downloads
Belangrijkste opties
Dit zijn de belangrijkste opties met betrekking tot recursieve downloads.
Recursieve downloadcontrole
Downloadfiltering en gedrag
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`wget` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Diverse scenario's die gebruikmaken van de recursieve downloadfunctie van wget.
Basis recursieve download
wget -r http://example.com/docs/
Begint bij de opgegeven URL en volgt alle sublinks om bestanden te downloaden.
Volledige website spiegelen
wget -m -k -p http://example.com/
Spiegelt een website volledig naar de lokale schijf. Converteert links naar lokale paden, downloadt alle benodigde elementen voor de pagina en downloadt alleen bijgewerkte bestanden op basis van tijdstempels.
Downloaden tot een specifieke diepte
wget -r -l 2 http://example.com/blog/
Beperkt de recursieve diepte tot 2, zodat alleen sublinks tot 2 niveaus onder de start-URL worden gevolgd.
HTML en gerelateerde bestanden downloaden (voor offline weergave)
wget -r -p -k http://example.com/article.html
Downloadt een specifieke HTML-pagina en alle benodigde bestanden (afbeeldingen, CSS, JS, etc.) om de pagina correct weer te geven, en converteert links naar lokale paden.
Alleen specifieke extensies downloaden
wget -r -A "*.pdf,*.doc" http://example.com/documents/
Downloadt recursief alleen PDF- en DOC-bestanden uit de opgegeven map.
User-Agent instellen en robots.txt negeren
wget -r -U "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36" -e robots=off http://example.com/
Stelt de User-Agent in en negeert robots.txt om toegang te krijgen tot alle inhoud. (Gebruik met voorzichtigheid)
Downloadbandbreedte beperken en wachttijd instellen
wget -r --limit-rate=200k --wait=5 http://example.com/
Beperkt de downloadsnelheid tot 200 KB/s en wacht 5 seconden tussen elk verzoek om de serverbelasting te verminderen.
Tips & Waarschuwingen
De recursieve downloadfunctie van wget is krachtig, maar moet met voorzichtigheid worden gebruikt, omdat deze de server overmatig kan belasten of onnodige gegevens kan downloaden.
Belangrijkste tips
- **Voorkom serverbelasting**: Gebruik de optie `--wait` om een pauze tussen verzoeken in te lassen en zo overmatige serverbelasting te voorkomen. De optie `--random-wait` kan ook worden gebruikt voor willekeurige wachttijden.
- **Respecteer `robots.txt`**: Standaard respecteert `wget` het `robots.txt`-bestand. Tenzij er een specifieke reden is, is het raadzaam om het gebruik van de optie `-e robots=off` te vermijden. Controleer het beleid van de website.
- **User-Agent instellen**: Sommige websites kunnen specifieke User-Agents blokkeren of andere inhoud aanbieden. Het instellen van een algemene browser User-Agent met de optie `--user-agent` kan nuttig zijn.
- **Beperk downloaddiepte**: Gebruik de optie `-l` om de recursieve diepte te beperken, zodat wordt voorkomen dat onnodige subpagina's worden gedownload en schijfruimte wordt verspild.
- **Certificaatwaarschuwingen**: `--no-check-certificate` schakelt de validatie van SSL/TLS-certificaten uit, wat een beveiligingsrisico met zich meebrengt. Gebruik dit niet op onbetrouwbare sites.
- **Hervat downloads**: Met de optie `-c` of `--continue` kunt u onderbroken downloads hervatten. Dit is handig voor grote bestanden of in omgevingen met een onstabiele netwerkverbinding.