Komplette Webseiten mit wget herunterladen

Das Linux-Tool wget gehört seit vielen Jahren zu den beliebtesten Werkzeugen für Administratoren und Entwickler. Neben dem einfachen Download einzelner Dateien besitzt wget eine besonders interessante Funktion: Es kann komplette Webseiten inklusive aller Bilder, CSS-Dateien, JavaScript-Dateien und weiterer Ressourcen lokal spiegeln.

Gerade für Entwickler, Administratoren oder zur Analyse von Webseiten ist diese Funktion äußerst praktisch.

Der wget-Befehl

Mit folgendem Befehl kannst du beispielsweise die komplette Website imakeyouintelligent.com lokal herunterladen:


wget \
--mirror \
--convert-links \
--adjust-extension \
--page-requisites \
--restrict-file-names=windows \
https://www.imakeyouintelligent.com/

Was bedeuten die einzelnen Parameter?

–mirror

Aktiviert den Spiegelmodus. Intern kombiniert wget dabei mehrere Optionen:

  • rekursiver Download
  • unendliche Rekursion
  • Zeitstempel berücksichtigen
  • keine Parent-Verzeichnisse verlassen

Dadurch entsteht eine nahezu vollständige lokale Kopie der Webseite.

–convert-links

Nach dem Download werden sämtliche internen Links angepasst.

Aus:


https://www.imakeyouintelligent.com/blog/

wird automatisch:


blog/index.html

Dadurch funktioniert die Webseite auch lokal im Browser.

–adjust-extension

Viele Webseiten liefern HTML-Dateien ohne Dateiendung aus. Diese Option ergänzt automatisch die passende Erweiterung (.html).

Dadurch lassen sich die Dateien problemlos lokal öffnen.

–page-requisites

Dieser Parameter lädt alle für die Darstellung notwendigen Dateien herunter.

  • CSS-Dateien
  • JavaScript
  • Bilder
  • Schriftarten
  • Icons

Ohne diese Option würde häufig nur der HTML-Code gespeichert werden.

–restrict-file-names=windows

Diese Option sorgt dafür, dass Dateinamen auch unter Windows problemlos verwendet werden können.

Sonderzeichen und ungültige Zeichen werden automatisch angepasst.

Wie funktioniert wget technisch?

Nach dem Start analysiert wget zunächst die Startseite.

Im Anschluss werden sämtliche internen Links rekursiv verfolgt.

Der Ablauf sieht vereinfacht folgendermaßen aus:


Startseite
      │
      ▼
HTML analysieren
      │
      ▼
Links extrahieren
      │
      ▼
Bilder herunterladen
      │
      ▼
CSS herunterladen
      │
      ▼
JavaScript herunterladen
      │
      ▼
Unterseiten analysieren
      │
      ▼
Wiederholen bis keine neuen Seiten gefunden werden

Dadurch entsteht eine nahezu vollständige Offline-Kopie der Website.

Wofür eignet sich diese Funktion?

  • Offline-Dokumentationen erstellen
  • Backups statischer Webseiten
  • Migration bestehender Webseiten
  • Analyse fremder Webseiten
  • Archivierung eigener Projekte
  • Entwicklung und Tests ohne Internetverbindung

Wichtige Hinweise

Der Spiegelmodus eignet sich ausschließlich für öffentlich erreichbare Inhalte.

Dynamische Funktionen wie Login-Bereiche, Formulare, Datenbanken oder serverseitige Anwendungen (PHP, ASP.NET, Node.js usw.) können damit nicht vollständig übernommen werden, da wget ausschließlich die ausgelieferte Webseite herunterlädt.

Auch solltest du immer die robots.txt sowie die Nutzungsbedingungen einer Website beachten und nur Inhalte herunterladen, für die du eine Berechtigung besitzt.

Fazit

Mit nur einem einzigen wget-Befehl lässt sich eine komplette Website inklusive Bilder, Stylesheets und JavaScript lokal spiegeln. Gerade für Administratoren, Webentwickler und IT-Profis gehört diese Funktion zu den nützlichsten Werkzeugen im Linux-Alltag.

Wer häufiger Webseiten analysiert oder Offline-Kopien erstellen möchte, sollte wget unbedingt kennen.

WordPress Cookie Hinweis von Real Cookie Banner