… weil Bananen keine Äpfel sind!

Ich ‚wget’te mir mal die ganze Seite.

September 18th, 2014 MrMartiniMo

Ein Kunde kam zu mir und bat mich seine gesamte Website herunterzuladen und zu sichern. Leider gab es aus Gründen keinen FTP-/SSH-Zugang.

Zunächst habe ich mir die Seite mal angeschaut. Es war die Seite einer kleinen Tierarztpraxis mit ein paar Unterseiten, vielen Bildern und kaum dynamischem Inhalt.

Die erste Überlegung, jede Seite einzeln zu speichern, habe ich schnell verworfen. Da damit nicht sichergestellt ist, dass ich auch wirklich jede Unterseite erwische.
Nachdem ich ein Freeware-Tool für den Mac ausprobiert habe, dass sich ständig aufhängte kam mir the old buddy wget in den Sinn.

Kurz gegoogelt: http://www.linuxjournal.com/content/downloading-entire-web-site-wget

1
2
3
4
5
6
7
wget --recursive \
     --page-requisites \
     --html-extension \
     --convert-links \
     --restrict-file-names=windows \
     --domains=die-domain.de \
     http://www.die-domain.de

Etwas modifiziert .. und fertig! 🙂

Für den Mac-User gibt es die Alternative curl. Leider habe ich da keinen schönen Ansatz wie bei wget gefunden, der mir die gesamte Website herunterlädt.
Außer eventuell diesen hier: http://coolestguidesontheplanet.com/install-and-configure-wget-on-os-x/ 😉
Achtet bei der Installation aber darauf, dass es schon neuere wget-Versionen gibt.

Für die, die es interessiert, hier noch die Beschreibung zu den Parametern:

--recursive, -r
Aktiviert den rekursiven Modus. Standardmäßig bis zu einer Tiefe von 5 

--page-requisites, -p
Alle Abhängigkeiten herunterladen, um die Seite lokal vernünftig darstellen zu können (css, js, bilder)

--html-extension
Speichert die Seiten als .html zum Beispiel wird aus index.php die Datei index.php.html

--convert-links, -k
Konvertiere alle Links, so dass die Seite lokal betrachtet werden kann

--restrict-file-names=modes
Ersetze unerlaubte Zeichen in Dateinamen

--domains=domain-list, -D domain-list
Durch Kommata getrennte Liste von Domains die nicht verlassen werden dürfen

Leave a Reply

I accept that my given data and my IP address is sent to a server in the USA only for the purpose of spam prevention through the Akismet program.More information on Akismet and GDPR.