Laden Sie ALLE Ordner, Unterordner und Dateien mit Wget herunter


20

Ich habe Wget verwendet und bin auf ein Problem gestoßen. Ich habe eine Site, die mehrere Ordner und Unterordner innerhalb der Site hat. Ich muss den gesamten Inhalt in jedem Ordner und Unterordner herunterladen. Ich habe verschiedene Methoden mit Wget ausprobiert, und wenn ich den Abschluss überprüfe, sehe ich in den Ordnern nur eine "Index" -Datei. Ich kann auf die Indexdatei klicken, und es wird mich zu den Dateien führen, aber ich brauche die tatsächlichen Dateien.

Hat jemand einen Befehl für Wget, den ich übersehen habe, oder gibt es ein anderes Programm, mit dem ich all diese Informationen abrufen kann?

Standortbeispiel:

www.mysite.com/Pictures/ Im Pictures DIr gibt es mehrere Ordner .....

www.mysite.com/Pictures/Accounting/

www.mysite.com/Pictures/Managers/North America / California / JoeUser.jpg

Ich brauche alle Dateien, Ordner usw.


1
Haben Sie die Dokumentation gelesen wget, insbesondere für die rekursive Verwendung ?
Moses

Es gibt auch einen Artikel in der Dokumentation hier , die relevant zu sein scheint.
Moses

Antworten:


36

Ich möchte annehmen, dass Sie dies nicht versucht haben:

wget -r --no-parent http://www.meinesite.com/bilder/

oder um den Inhalt abzurufen, ohne die "index.html" -Dateien herunterzuladen:

wget -r --no-parent --reject "index.html *" http://www.meinesite.com/bilder/

Referenz: Verwenden von wget zum rekursiven Abrufen eines Verzeichnisses mit beliebigen Dateien


1
Danke, ich habe diesen Befehl mehrmals ausgeführt, aber ich habe den Befehl nicht bis zum Ende ausführen lassen. Ich wurde von der Seite verfolgt und ließ den Befehl tatsächlich beenden, und es wurden ALLE Ordner kopiert. Zuerst ging es zurück und kopierte ALLE Dateien in den Ordner.
Horrid Henry

nur um dir zu zeigen, wenn ich Geduld gehabt hätte, hätte ich das vor 2 Wochen gemacht ... LOL. :) Danke noch einmal.
Schrecklicher Henry

@Horrid Henry, Glückwunsch!
Felix Imafidon

Ich benutze den ähnlichen Befehl, erhalte aber nur eine index.html-Datei!
Shenkwen

19

ich benutze wget -rkpN -e robots=off http://www.example.com/

-r bedeutet rekursiv

-kbedeutet Links konvertieren. Die Links auf der Webseite lauten also localhost anstelle von example.com/bla

-p bedeutet, dass Sie alle Webseitenressourcen abrufen und Bilder und Javascript-Dateien abrufen müssen, damit die Website ordnungsgemäß funktioniert.

-N Um Zeitstempel abzurufen, überspringen Sie lokale Dateien, die neuer sind als Dateien auf der Remote-Website.

-eist eine Flag-Option, die vorhanden sein muss, damit robots=offsie funktioniert.

robots=off bedeutet, dass die Roboterdatei ignoriert wird.

Ich hatte auch -cin diesem Befehl also, wenn sie Verbindung unterbrochen würde, wenn fortfahren würde, wo es aufgehört hat, als ich den Befehl erneut ausführte. Ich dachte, -Nwürde gut mit gehen-c


Könnten Sie Ihrer Antwort ein paar Sätze hinzufügen, um zu erklären, was diese Parametereinstellungen bewirken?
Fixer1234

Es tut uns leid. Ich bin sicher, ich füge sie jetzt hinzu
Tim Jonas

Ich habe meine Antwort aktualisiert
Tim Jonas

Vielen Dank. Sollte -c also Teil Ihres Befehlsbeispiels sein oder optional nach einem unvollständigen Download hinzugefügt werden? Außerdem hat das -e Vorrang vor allen Befehlen in .wgetrc? Und ist das ein Tippfehler für -r (rekursiv vs. zurückgezogen)?
Fixer1234

Ja, das ist richtig. Yes -eführt den Befehl so aus, als wäre er Teil von .wgetrc. Ich habe ihn dort hinzugefügt, da er robots=offohne ihn anscheinend nicht funktioniert hat.
Tim Jonas

1

wget -m -A * -pk -e robots = off www.mysite.com/ Damit werden alle Arten von Dateien lokal heruntergeladen und aus der HTML-Datei
darauf verwiesen. Die Robots-Datei wird ignoriert

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.