So speichern Sie alle verlinkten Webseiten


14

Ich möchte diese Webseite und alle Seiten, auf die sie verweist , speichern . und hoffe, die gleichen Links zwischen den gespeicherten Webseiten zu haben.

Gibt es einige Möglichkeiten, um verknüpfte Seiten zu öffnen und zu speichern?

Antworten:


11

Sie können mit dem Befehlszeilenprogramm wget tun, was Sie möchten . Wenn Sie diese -rOption aktivieren, werden Webseiten rekursiv heruntergeladen. Beispielsweise:

wget -r http://mat.gsia.cmu.edu/orclass/integer/integer.html

Dadurch wird diese Webseite und alles, worauf verlinkt wird, heruntergeladen. Sie können auch festlegen, dass nur eine bestimmte Anzahl von Ebenen verwendet wird. Dazu geben Sie einfach -reine Zahl ein. Wie solche:

wget -r 5 http://mat.gsia.cmu.edu/orclass/integer/integer.html

@ Mark: Danke! Ich versuche jetzt, mat.gsia.cmu.edu/orclass und die damit verknüpften Seiten mit dem Befehl wget -r mat.gsia.cmu.edu/orclass herunterzuladen . wget erstellt ein Verzeichnis mat.gsia.cmu.edu unter dem angegebenen und lädt die Seiten darunter herunter. Die Links zwischen den heruntergeladenen Seiten haben jedoch nicht mat.gsia.cmu.edu im Pfad, sodass dies zu einem Problem wird und ich nicht durch Klicken auf die Links von einer Seite zur nächsten wechseln kann. Ich habe mich gefragt, warum und wie ich das Problem lösen soll. Vielen Dank!
StackExchange for All

Ich glaube nicht, dass Sie externe Links, @Tim, rekursiv herunterladen können.
Wuffers

Bedeutet "externe Links" diejenigen, die sich nicht im aktuellen Pfad befinden?
StackExchange for All

@ Tim: Mit externen Links meine ich Links, die außerhalb von mat.gsi.cmu.edu verweisen
Wuffers

1
@ Tim: Oh, ok. Entschuldigen Sie das Missverständnis. Ich denke, dass Sie versuchen könnten, die HTML-Dateien selbst zu bearbeiten, um sie zu überprüfen und zum Laufen zu bringen.
Wuffers

10

Dieser Thread ist jetzt alt, aber andere mögen ihn sich ansehen. Vielen Dank, Wuffers, dass Sie mich in die richtige Richtung weisen, aber die Antwort von Wuffers erweitern: Eine moderne Version von wget bietet eine Reihe nützlicher Optionen, um Links zu rekursieren und als lokale relative Links zu patchen, sodass Sie in einer lokalen Kopie navigieren können einer Website. Verwenden Sie die Option -r, um eine Rekursion durchzuführen, die Option -k, um lokale Links zu patchen, die Option -H, um in andere Domänen als die ursprüngliche zu gelangen, die Option -D, um zu begrenzen, in welche Domänen Sie gelangen, und die Option -l, um die zu begrenzen Rekursionstiefe und die Option -p, um sicherzustellen, dass die Blätter Ihres Durchlaufs alles haben, was sie zur korrekten Anzeige benötigen. Im Folgenden wird beispielsweise eine Seite und alles, worauf sie direkt verweist, heruntergeladen, sodass sie lokal durchsucht werden kann.

wget -r -l 1 -p -k -H -D domain.com,relateddomain.com http://domain.com/page/in/domain

Mit einem Befehl, der dem obigen ähnlich ist, konnte ich einen Teil einer Wiki-Seite mit externen Links auf meine lokale Festplatte herunterladen, ohne Megabyte an fremden Daten herunterzuladen. Wenn ich jetzt die Root-Seite in meinem Browser öffne, kann ich ohne Internetverbindung im Baum navigieren. Das einzig irritierende war, dass die Root-Seite in Unterverzeichnissen vergraben war und ich eine Redirect-Seite der obersten Ebene erstellen musste, um sie bequem anzeigen zu können. Es kann einige Versuche und Irrtümer erfordern, um es richtig zu machen. Lesen Sie die wget-Manpage und experimentieren Sie.


4

Sie können einen kostenlosen Website-Crawler wie httrack verwenden .

Von der Website;

Mit [httrack] können Sie eine World Wide Web-Site aus dem Internet in ein lokales Verzeichnis herunterladen, rekursiv alle Verzeichnisse erstellen und HTML, Bilder und andere Dateien vom Server auf Ihren Computer übertragen. HTTrack ordnet die relative Linkstruktur der ursprünglichen Site an. Öffnen Sie einfach eine Seite der "gespiegelten" Website in Ihrem Browser, und Sie können die Website von Link zu Link durchsuchen, als würden Sie sie online anzeigen.


1
+1 Hervorragende Bewerbung! Aber es packt auch alle verknüpften Zip-Dateien, die ich nicht wollte. Aber dann hätte ich wohl zuerst die Anleitung lesen sollen!
Finlaybob

Ja, es kann / wird allen Links folgen, also wird es Dateien herunterladen. (@Finlaybob Sind Sie sich bewusst, dass die in Ihrem Profil aufgeführte Startseite gehackt wurde?)
RJFalconer

Ich war nicht! Ich werde mich darum kümmern - danke, dass du mich informiert hast!
Finlaybob
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.