
📥 Wie man eine gesamte Website mit Wget unter Windows herunterlädt
Das kostenlose Kommandozeilenprogramm Wget kann Websites spiegeln, jede Seite, jedes Bild, jede CSS-Datei herunterladen und in einem Ordner auf Ihrer Festplatte ablegen. Das klingt nach Magie, ist aber reine Technik: rekursive Linkverfolgung, Pfadkonvertierung in relative URLs und sorgfältige Strukturerhaltung. Nachdem Sie ein solches Archiv erstellt haben, öffnet sich die Site lokal, als wäre sie live; Sie klicken einfach auf eine beliebige .html-Datei.
Das Problem: Brauchbare Anleitungen für Windows sind praktisch nicht existent. Die meisten Handbücher sind für Unix geschrieben, und der durchschnittliche Windows-Anwender benötigt eine fertige .exe, klare Befehle und Schutz vor typischen Fallstricken wie Endlosrekursion oder defekten Links. Genau diese Lücke schließen wir.
💡 Kurzüberblick:
- Laden Sie Wget für Windows herunter und fügen Sie den Pfad des Programms zur System-PATH-Variable hinzu
- Öffnen Sie eine Eingabeaufforderung in Ihrem Zielordner und führen Sie den Spiegelungsbefehl aus
- Korrigieren Sie nach dem Herunterladen defekte Links und Pfade mit grepWin, dann ist das Archiv bereit zur Ansicht
- Wenn keine Rekursion benötigt wird, nutzen Sie einen Modus mit einer vorbereiteten URL-Liste
Warum überhaupt eine ganze Site herunterladen
Das Internet ist nicht für die Ewigkeit. Sites schließen, wechseln den Besitzer, werden umgestaltet und verlieren alte Inhalte. Die Data-Hoarding-Community auf Reddit hat das Archivieren längst zur Kultur erhoben, und das aus gutem Grund. Sie können nicht vorhersagen, wann Ihr Lieblingsblog verschwindet oder wertvolle Dokumentation hinter eine Paywall wandert, aber Sie können sie in ihrer aktuellen Form sichern.
Die Szenarien reichen vom Naheliegenden bis zum Unerwarteten. Sie stehen vor einer Reise ohne Internetzugang und benötigen eine funktionsfähige Momentaufnahme einer Informationssite. Oder Sie sammeln Design-Epochen; das Web von gestern mit seinen Tabellenlayouts und knallbunten Buttons ist bereits Geschichte. Selbst die eigene Site regelmäßig zu spiegeln ist sinnvoll: Es ist kein Backup im herkömmlichen Sinne (Sie können die Datenbank nicht wiederherstellen), aber ein statischer Schnappschuss, der jeden Hosting-Crash überlebt.
Ein wichtiger Hinweis: Seien Sie vorsichtig, was Sie herunterladen. Urheberrecht und Datenschutz gelten weiterhin. Die private Nutzung einer gespeicherten Kopie ist in der Regel legal, aber das Veröffentlichen fremder Inhalte ohne Erlaubnis kann Probleme verursachen.
Wie Wget eine Site durchsucht: die Mechanik des Prozesses
Wget startet bei der von Ihnen angegebenen URL und folgt rekursiv jedem internen Link, theoretisch bis in unendliche Tiefe. Bei korrekter Konfiguration bricht es nicht ins offene Internet aus und beginnt, Google herunterzuladen: Die Option --mirror in Kombination mit --reject-regex hält den Crawl innerhalb der Grenzen der Zieldomäne. Alle externen Links bleiben unangetastet, reiner Text mit der ursprünglichen URL.
Dabei greift Wget alles ab: HTML-Seiten, Stylesheets, Skripte, Bilder, Schriftarten. Anschließend konvertiert es interne Links in relative Pfade, sodass sich das Archiv lokal öffnen lässt und die Navigation wie auf der Live-Site funktioniert. Externe Links bleiben unverändert und verweisen weiterhin ins Internet (sofern Sie beim Betrachten Zugriff darauf haben).
Ein Archiv, kein Backup. Sie können eine Site aus einer solchen statischen Kopie nicht wiederherstellen, denn es gibt keine Datenbank und keine Serverlogik. Wget arbeitet wie ein Suchmaschinen-Crawler: Es findet nur Seiten, auf die jemand verlinkt hat. Dabei werden Sie sehen, wie wichtig interne Links für die inhaltliche Vernetzung sind; verwaiste Seiten ohne eingehende Links schaffen es nicht ins Archiv.
Obwohl Wget an kein bestimmtes CMS gebunden ist, funktioniert es besonders gut mit WordPress-Sites. Der Grund ist einfach: Standard-Widgets wie Tag-Clouds und Monatsarchive erzeugen ein dichtes Netz interner Links, das der Bot mühelos durchläuft.
Wget unter Windows installieren
Die Wget-Welt dreht sich historisch um Unix, und Windows-Anwender sind hier Gäste. Wenn Sie die offizielle GNU-Site besuchen und den Quellcode herunterladen, erhalten Sie einen Haufen .c-Dateien, kein lauffähiges Programm. Sie benötigen eine vorkompilierte Binärdatei:
- Gehen Sie zu eternallybored.org/misc/wget, einem inoffiziellen, aber bewährten Repository mit Wget-Builds für Windows (aktuelle Version 1.21.4)
- Laden Sie das Zip-Archiv der neuesten Version herunter und entpacken Sie es in einen separaten Ordner. Eine Installation ist nicht erforderlich; es handelt sich um ein portables Programm
Wenn Sie wget.exe doppelklicken, blinkt ein Eingabeaufforderungsfenster auf und schließt sich sofort. Wget ist ein Konsolenprogramm; es benötigt ein geöffnetes Terminal in Ihrem Zielordner. Und damit Sie die .exe nicht in jeden Ordner mit künftigen Archiven kopieren müssen, fügen Sie Wget zur System-PATH-Variable hinzu:
- Drücken Sie
Windows + R, fügen Sie Folgendes ein und führen Sie es aus:
1 "C:\Windows\system32\rundll32.exe" sysdm.cpl,EditEnvironmentVariables
- Suchen Sie im Abschnitt Benutzervariablen die Variable
Pathund klicken Sie auf Bearbeiten... - Klicken Sie auf Neu und geben Sie den vollständigen Pfad zum Ordner mit der
wget.exeein - Schließen Sie alle Dialoge mit OK
Überprüfung: Drücken Sie erneut Windows + R → cmd /k "wget -V". Sie sollten die Wget-Version sehen, nicht die Meldung, dass der Befehl nicht erkannt wird.

Wichtige Wget-Optionen: detaillierte Aufschlüsselung
Die meisten Optionen haben kurze Einzelbuchstaben-Entsprechungen, aber lange Namen sind aussagekräftiger und lesbarer ohne Spickzettel. Ich habe in der Praxis bewährte Einstellungen ausgewählt, sodass Sie statt des 181-seitigen GNU-Wget-Handbuchs einen Extrakt mit einer Erklärung des „Warum" für jede einzelne erhalten.
Kernoptionen
--mirror aktiviert unendliche Rekursion. Im Wesentlichen ist es ein Satz anderer Optionen, die unter einem Flag zusammengefasst sind. Ohne dieses Flag lädt Wget nur die angegebene Seite herunter, nicht die gesamte Site. Erst --mirror macht das Spiegeln möglich.
--page-requisites lädt alle zugehörigen Ressourcen herunter: CSS, JavaScript, Bilder, Schriftarten. Ohne diese Option sieht Ihr Archiv wie eine nackte HTML-Seite ohne Stile oder Bilder aus.
--convert-links schreibt nach Abschluss des Downloads Links in HTML-Dateien um, sodass sie lokal funktionieren. Absolute URLs werden durch relative Pfade ersetzt. Dadurch können Sie index.html von der Festplatte öffnen und durch die Seiten navigieren wie auf einer Live-Site.
--adjust-extension fügt Dateien, die ohne Endung ankamen, Erweiterungen hinzu. Moderne Sites liefern Seiten oft ohne .html am Ende aus (menschenlesbare URLs), und ohne diese Option versteht der Browser nicht, dass er ein HTML-Dokument vor sich hat. Es gibt einen Haken: Wenn der Server Inhalte per gzip komprimiert, kann Wget der Datei fälschlicherweise eine .gz-Endung geben. Die nächste Option schützt davor.
--compression=auto behandelt gzip-Komprimierung im laufenden Betrieb. Ohne sie könnte ein SVG-Logo als logo.svg.gz gespeichert werden und für die lokale Ansicht unbrauchbar sein. Diese Option ist nicht in allen Builds verfügbar; Unix-Nutzer stoßen gelegentlich auf ihr Fehlen. Der Windows-Build von eternallybored.org enthält sie.
--reject-regex "/search|/rss" verhindert das Crawlen von URLs, die die angegebenen Wörter enthalten. Suchseiten und RSS-Feeds erzeugen unendliche Parameterketten, die Ihr Dateisystem mit Namen füllen, die mehrere Bildschirmseiten lang sind. Der reguläre Ausdruck verwendet hier grundlegende POSIX-Syntax, nicht volles PCRE. Vorsicht: /search schneidet nicht nur Suchmüll ab, sondern auch legitime Artikel mit URLs wie yoursite.com/search-for-extraterrestrial-life. Machen Sie bei solchen Kollisionen das Muster spezifischer.
Zusätzliche Optionen
--no-if-modified-since deaktiviert die Prüfung des If-Modified-Since-Headers. Ich setze dieses Flag nur, wenn der Server sich in den Protokollen ausdrücklich beschwert. Wenn Sie nicht vorhaben, erneut im selben Ordner zu laufen, um Änderungen zu übernehmen, ist diese Option nicht kritisch.
--no-check-certificate überspringt die SSL-Zertifikatsprüfung. Beim Spiegeln geben Sie keine Passwörter ein und übertragen keine vertraulichen Daten, daher ist eine strikte Zertifikatsprüfung übertrieben. Dieses Flag erspart Kopfschmerzen bei Sites mit abgelaufenen oder selbstsignierten Zertifikaten.
--user-agent täuscht den Browser-User-Agent vor. Manche Server erkennen Wget und blockieren Anfragen. Das Vortäuschen eines normalen Chrome-Browsers löst das Problem:
1 --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
Erfolgt die Blockierung per IP, benötigen Sie ein VPN und möglicherweise eine Verteilung des Downloads auf mehrere Maschinen. In diesem Fall sind auch die Optionen --wait und --random-wait zur Verlangsamung der Anfragerate nützlich.
--restrict-file-names=windows begrenzt Zeichen in Dateinamen auf einen Windows-sicheren Satz. Unter Unix sind Sonderzeichen in Namen erlaubt, und ein auf einem Linux-Rechner heruntergeladenes Archiv kann unter Windows unlesbar sein. Arbeiten Sie unter Windows, wird das Flag automatisch angewendet; laden Sie unter Unix herunter, betrachten es aber unter Windows, geben Sie es explizit an.
--backup-converted speichert eine Originalkopie jeder Datei, die Wget während der Link-Konvertierung geändert hat. Das verdoppelt die Archivgröße. Ich nutze es nicht, erwähne es aber für den Fall, dass Sie eine sekundengenaue Sicherung jeder Bearbeitung benötigen.
Öffnen der Eingabeaufforderung im richtigen Ordner
Wget läuft in einem Terminal, und das Terminal muss auf den Ordner zeigen, in dem Sie das Archiv speichern möchten. Es gibt mehrere Methoden, von Standard bis fortgeschritten:
Windows + R→cmd→ Enter, danncd /d C:\path\to\archive(das/d-Flag erlaubt den Wechsel zwischen Laufwerken)- Enthält der Pfad Leerzeichen, setzen Sie ihn in Anführungszeichen:
cd /d "C:\My Archive"
Schneller, in einer Zeile: Windows + R → cmd /k "cd /d C:\path\to\archive". Das /k-Flag hält das Fenster nach Ausführung des Befehls offen.
Wenn Sie Total Commander nutzen: Befehle → Eingabeaufforderung öffnen öffnet ein Terminal direkt im aktuellen Ordner. Für den Explorer gibt es einen Registry-Eingriff, der dem Kontextmenü eine Option „Eingabeaufforderung hier öffnen" hinzufügt.
Starten des Downloads: der vollständige Befehl
Alles zusammengefügt. Hier ist der Befehl, den ich zum Spiegeln einer durchschnittlichen Website verwende:
1 wget --mirror --page-requisites --convert-links --adjust-extension --compression=auto --reject-regex "/search|/rss" --no-if-modified-since --no-check-certificate --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" https://example.com
Dasselbe lässt sich mit kurzen Flags schreiben: wget -mkp -E --compression=auto -R "/search|/rss" .... Aber lange Namen machen den Befehl selbstdokumentierend. In einem Monat öffnen Sie Ihre .bat-Datei und verstehen sofort, was jede Option bewirkt.
Ersetzen Sie https://example.com durch die tatsächliche URL der Zielsite und drücken Sie Enter. Der Vorgang kann je nach Größe der Site und Serverbeschränkungen von wenigen Minuten bis zu mehreren Stunden dauern.
Nachbearbeitung: grepWin und typische Korrekturen
Nach dem Download benötigt das Archiv fast immer einige Nacharbeiten. Das Dienstprogramm grepWin ist ein Schweizer Taschenmesser für die Stapelsuche und -ersetzung in Textdateien unter Windows. Hier ein paar typische Szenarien:
Entfernen von HTML-Müll-Tags. Manche CMS-Plattformen erzeugen leere
<source>-Tags, die die Darstellung stören. Wählen Sie in grepWin die Regex-Suche nach<source media=".*">, geben Sie die Maske*.htmlan und ersetzen Sie mit einer leeren Zeichenkette.Korrigieren von Ressourcenpfaden. Wenn einige Pfade absolut geblieben sind, findet grepWin sie mit einem Muster wie
src="https://example.com/und ersetzt sie durch das lokale Äquivalent.

Dies ist lediglich ein Ausgangspunkt; jede Website birgt ihre eigenen Überraschungen. Die Stärken von grepWin liegen in der sofortigen Vorschau vor dem Ersetzen, der rekursiven Ordnerverarbeitung und der Regex-Unterstützung. Wenn der Umfang der Bearbeitungen jedoch über „Suchen und Ersetzen" hinausgeht, bieten Unix-Werkzeuge wie sed und grep deutlich mehr Flexibilität. Windows-Versionen sind über WSL oder Cygwin verfügbar.
Alternative: Herunterladen von einer URL-Liste ohne Rekursion
Rekursives Crawling ist nicht immer angebracht. Wenn die Website riesig ist, Sie aber nur eine bestimmte Auswahl an Seiten benötigen, ist es einfacher, eine URL-Liste zu erstellen und diese Wget über --input-file zu übergeben:
1 wget --input-file=links.txt --page-requisites --convert-links --adjust-extension --compression=auto --no-if-modified-since --no-check-certificate --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
Beachten Sie, dass --mirror und --reject-regex entfernt wurden: Rekursion ist nicht erforderlich, und Sie kontrollieren die URL-Liste selbst.
Wie stellt man eine solche Liste zusammen? Eine Methode ist die erweiterte Google-Suche: Die Abfrage site:yoursite.com "keyword phrase" liefert indexierte Seiten zum Thema. Stellen Sie die Ergebnisse auf 100 ein, rüsten Sie sich mit der Erweiterung Copy Links für Chrome aus und kopieren Sie URLs stapelweise in links.txt.
Video: Spiegeln einer Website in 5 Minuten
Um den gesamten Prozess live zu sehen, von der Installation bis zum fertigen Archiv, sehen Sie sich diesen Screencast an:
Der Autor geht den Prozess von Grund auf durch: Wget herunterladen, Optionen konfigurieren, den Befehl ausführen und das Ergebnis im Browser öffnen. Ich empfehle, ihn vor Ihrem ersten Durchlauf anzusehen; 7 Minuten Bildschirmzeit sparen Ihnen eine Stunde Fehlersuche.
⁉️🤔 Häufig gestellte Fragen
Kann ich eine Website aus einem Wget-Archiv wiederherstellen?
Ein Wget-Archiv ist ein statischer Schnappschuss: HTML, CSS, JS und Mediendateien. Es enthält weder eine Datenbank noch serverseitige Logik. Sie können eine solche Kopie nicht auf einen Hoster laden und WordPress mit Kommentaren und Admin-Oberfläche wiederbeleben. Dies ist ein Werkzeug zur Inhaltsbewahrung, nicht für Backups. Für ein vollständiges WordPress-Backup nutzen Sie Plugins wie UpdraftPlus oder Duplicator, die sowohl Dateien als auch die Datenbank sichern.
Wget lädt zu viel Ballast herunter. Wie begrenze ich das?
Eine Kombination aus
--reject-regex(URL-Filter nach Muster) und--reject(Filter nach Dateiendungen) löst das Problem. Beispielsweise überspringt--reject=jpg,png,gifsämtliche Bilder. Oder--reject-regex "/tag/|/category/|/page/"schneidet Schlagwort-Archive, Kategorien und Seitennummerierungen ab. Entscheidend ist, vor einem vollständigen Durchlauf an einer kleinen Seitenauswahl zu testen.
Der Server hat meine IP gesperrt, nachdem ich mit dem Herunterladen begonnen habe. Was soll ich tun?
Wget lässt sich am User-Agent oder an der Anfragefrequenz erkennen. Drei Schutzebenen: User-Agent-Tarnung per
--user-agent(oben gezeigt), Drosselung per--wait=1 --random-wait(1 Sekunde Pause plus zufälliger Zuschlag) und IP-Wechsel per VPN. Bei großen Sites können Sie den Download aufteilen: Bereiten Sie mehrere URL-Listen vor und führen Sie Wget parallel von verschiedenen Rechnern oder VPN-Endpunkten aus.
Warum ist Wget besser als Browser-Erweiterungen zum Speichern von Seiten?
Erweiterungen wie SingleFile speichern eine einzelne Seite. Wget spiegelt eine gesamte Site, mit Navigation, Seitennummerierung und allen internen Links. Für einen Blog mit 500 Artikeln bräuchte eine Browser-Erweiterung 500 manuelle Klicks. Wget erledigt das mit einem Befehl. Zudem konvertieren Browser-Erweiterungen Links nicht für die lokale Navigation: Ihr Ergebnis wären 500 isolierte Dateien ohne Verbindung zueinander.
Das Archiv wiegt mehrere Gigabyte. Wie komprimiere und lagere ich es?
Ein Ordner mit Tausenden kleiner Dateien ist umständlich zu übertragen, zu sichern und von Antivirensoftware zu scannen. Ich packe solche Archive in RAR mit der Methode „Store" oder „Fastest": Geschwindigkeit zählt mehr als Kompressionsrate, da HTML und Medien bereits komprimiert sind. Ich füge stets einen Wiederherstellungsdatensatz hinzu, der bei defekten Sektoren auf einer Festplatte oder Übertragungsfehlern den Tag rettet. Das Ergebnis: eine einzelne Datei, die in Sekunden kopiert ist und bei der Lagerung nicht auseinanderfällt.
Herunterladen oder nicht: Wann sich Wget lohnt
Wget ist nichts für den täglichen Gebrauch. Es ist ein Werkzeug für eine bestimmte Aufgabe: eine vollständige statische Kopie einer Site zu erhalten, die Ihnen am Herzen liegt oder die Sie nützlich finden. Wenn die Gefahr besteht, dass die Ressource verschwindet, greifen Sie zu Wget. Wenn Sie offline arbeiten werden, greifen Sie zu Wget. Wenn Sie ein „digitales Fossil" aus der Geocities-Ära bewahren möchten, erst recht.
Für einzelne Seiten genügt eine Browser-Erweiterung. Für ein vollständiges WordPress-Backup nutzen Sie ein Backup-Plugin. Wenn Sie jedoch ausdrücklich ein in sich geschlossenes, navigierbares Archiv einer gesamten Website benötigen, hat Wget praktisch keine Alternativen, und jetzt wissen Sie, wie Sie es unter Windows schmerzfrei ausführen.
Probieren Sie es an einer kleinen Site eines Bekannten oder an Ihrem eigenen Blog aus. Der erste Durchlauf wird vieles klären, der zweite läuft dann reibungslos. Und vergessen Sie den Wiederherstellungsdatensatz in Ihrem Archiv nicht: Lassen Sie Ihre Sammlung jede Festplatte überdauern.



