Ich vermute, ich könnte wget verwenden, aber dann wird versucht, alle Links und die HTML-Datei zu erhalten. Gibt es ein besseres Werkzeug, um dies zu erreichen?
Nur um Ihre Frage zu klären: Sie möchten nur die Liste der Dateien, die vom Server heruntergeladen werden können, nicht die Dateien selbst (noch)?
akira vor 14 Jahren
0
Wie funktioniert ein Befehl wie "wget --no-verbose --spider --no-verzeichnisse --recursive --level = 2 http: // www.apache.org / dist / httpd / binaries /" nicht? Du? Wenn Sie genauer sein könnten, könnte dies hilfreich sein
DaveParillo vor 14 Jahren
0
3 Antworten auf die Frage
12
John T
Sie können angeben, welche Dateierweiterungen wgetbeim Crawlen von Seiten heruntergeladen werden:
wget -r -A zip,rpm,tar.gz www.site.com/startpage.html
dies wird eine rekursive Suche und nur Download - Dateien mit den durchführt .zip, .rpmund .tar.gzErweiterungen.
7
akira
Angenommen, Sie möchten wirklich nur eine Liste der Dateien auf dem Server, ohne sie (noch) abzurufen:
wget: Einfacher Befehl, um eine CURL-Anforderung anzufordern und Remote-Dateien auf unseren lokalen Computer herunterzuladen.
--execute="robots = off": Dies ignoriert die Datei robots.txt beim Durchsuchen von Seiten. Dies ist hilfreich, wenn Sie nicht alle Dateien erhalten.
--mirror: Diese Option spiegelt im Wesentlichen die Verzeichnisstruktur für die angegebene URL wider. Es ist eine Abkürzung für -N -r -l inf --no-remove-listingwas bedeutet:
-N: Rufen Sie Dateien nicht erneut ab, außer neuer als lokal
-r: Geben Sie den rekursiven Download an
-l inf: maximale Rekursionstiefe (inf oder 0 für unendlich)
--no-remove-listing: Entfernen Sie keine ".listing" -Dateien
--convert-links: Links in heruntergeladenem HTML oder CSS auf lokale Dateien verweisen
--no-parent: Steigen Sie nicht in das übergeordnete Verzeichnis auf
--wait=5: Warten Sie 5 Sekunden zwischen den Abrufen. Damit wir den Server nicht verprügeln.
<website-url>: Dies ist die Website-URL, von der aus die Dateien heruntergeladen werden können.