Es gibt 2 Antworten in diesem Thema, welches 2.288 mal aufgerufen wurde. Der letzte Beitrag () ist von HostBuster.

  • Mit dem Kommandozeilen-Programm wget ist es möglich, Dateien von einem Webserver auf den lokalen Linux-Computer oder den eigenen Server herunterzuladen.


    Programm-Syntax



    Das Programm wird wie folgt aufgerufen:

    Code
    wget [optionen] [url]

    Bei der Angabe der Optionen ist auf Goß- und Kleinschreibung zu achten.


    Download-Optionen

    wget bietet eine Reihe von Optionen für den Download von Dateien:


    `-r' `--recursive'

    Diese Option erlaubt das rekursive Herunterladen. Dies ist eigentlich die interessanteste Option, da diese notwendig ist, wenn man mehr als nur die Indexdatei herunterladen will, was ja in den meisten Fällen Sinn macht. Die Option wird meistens zusammen mit der Option '-l' verwendet. Beim rekursiven Download von Webseiten folgt wget allen Links, die in einer HTML-Datei angegeben sind, bzw. es werden auch Dateien wie Bilder heruntergeladen, die für die Darstellung der Webseite relevant sind.

    Code
    Beispiel: wget -r http://www.meineseite.de/index.html

    '-l', '--level'

    Mit der Option '-l' gibt man an, wie tief der rekursive Download verzweigen darf.

    Wenn wget einem einem Link zu einer weiteren Webseite folgt, dann kann es passieren, daß diese zweite Webseite wieder einen Link zu einer weiteren Internetseite enthält. In diesem Fall würde wget ebenfalls diesem Link folgen. Wenn man dies weiterspinnt, dann könnte wget so rein theoretisch den Inhalt des gesamten Internets herunterladen. Um dies zu vermeiden, gibt es die Option '-i', welche die Tiefe der Rekursion angibt. Als Standard ist "5" vorgesehen. Will man zum Beispiel nur eine einzige Webseite mit dazugehörigen Dateien herunterladen, so ist eine Rekursionstiefe von 1 sinnvoll. Gibt man 0 als Rekursionstiefe an, so gibt es keine Beschränkung, und man hat, wenn man genug Festplattenplatz zur Verfügung hat, den gesamten Inhalt des Internets geladen ;)

    Code
    Beispiel: wget -r -l1 http://www.meineseite.de/index.html

    `-c' `--continue'

    Setzt einen unterbrochenen Download fort. Dies ist vor allem bei großen Dateien sinnvoll. Hierbei spielt es keine Rolle, ob das Dateifragment mit wget oder einem anderen Programm heruntergeladen wurde.

    Code
    Beispiel: wget -r -l1 -c http://www.meineseite.de/index.html

    `-k' `--convert-links'

    Beim Download einer Internetseite werden alle darin angegebenen absoluten Links in relative Links umgewandelt. Beispielsweise wird 'http://www.meineseite.de/hobbys/garten.html' in 'hobbys/garten.html' umgewandelt. Diese Option ist vor allem dann sehr nützlich, wenn man eine Online-Dokumentation herunterladen will, um diese offline zu lesen.

    Code
    Beispiel: wget -r -l1 -k http://www.meineseite.de/kochkurs/index.html

    `-Y on/off' `--proxy=on/off'

    Diese Einstellung aktiviert oder deaktiviert die Proxy-Unterstützung. Hierbei wird über eine Umgebungsvariable auf den im System eingestellten Proxy zurückgegriffen. Über die Optionen --proxy-user=user und --proxy-passwd=password kann zudem noch ein Benutzername sowie ein Kennwort für den Proxyzugriff angegeben werden. Im untenstehenden Beispiel kommen außerdem die Optionen 'Rekursiv' sowie 'Level' zum Einsatz.

    Code
    Beispiel: wget -r -l1 -proxy=on --proxy-user=tux --proxy-passwd=geheim http://www.meineseite.de/index.html

    `-Q quota' `--quota=quota'

    Mit der Quota-Option ist es möglich, ein Downloadlimit zu setzen. Diese Begrenzung bezieht sich auf die angeforderten Datenmengen. Standardmäßig wird das Downloadlimit in Byte angegeben. Jedoch ist es auch möglich, die Datenmenge in Kilobyte oder Megabyte anzugeben. Hierzu muss hinter den angegebenen Wert 'k' bzw. 'm' gesetzt werden. Wird Quota auf '0' oder 'inf' gesetzt, so kann eine unbegrenzte Datenmenge heruntergeladen werden. Wird die Option -quota nicht angegeben, so ist die Downloadmenge ebenfalls unbeschränkt.

    Lädt man eine einzelne Datei herunter, so tritt die Quota-Option nicht in Kraft, da sonst die Datei nur unvollständig heruntergeladen werden würde, was wenig Sinn macht.

    Code
    Beispiel: wget -r -l1 -Q5m http://www.meineseite.de/vieledaten/index.html

    `-N' `--timestamping'

    Die Timestamping-Option ist eine der wichtigsten. Diese Option hilft einem bei der Sicherung der entfernten Daten.


    Besonders sinnvoll ist diese Option, wenn man Seiten in regelmäßigen Abständen sichern will. Wird diese Option beim Download der Daten mit angegeben, so vergleicht wget das Datum jeder Datei, die heruntergeladen wird. Existiert bereits eine lokale Kopie, deren Datum dasselbe ist, wie von der Datei auf dem Server, so wird diese Datei beim Download ausgelassen, da keine Änderung an der Datei vorgenommen wurde. Ist die Datei auf dem Server aktueller als die bereits vorhandene Datei auf dem heimischen PC, so wird diese Datei heruntergeladen, da neueren Datums. Auf diese Art werden nur Daten heruntergeladen, die Änderungen erfahren haben seit dem letzten Datenabgleich. Auf diese Weise wird Downloadzeit und Datenvolumen eingespart, was bei größeren Webseiten klar von Vorteil sein kann.

    Code
    Beispiel: wget -r -l1 -N http://www.meineseite.de/



    Verzeichnis-Optionen

    Durch die Angabe der folgenden Verzeichnis-Optionen kann man spezifizieren, wo die angeforderten Daten abgelegt werden sollen, bzw. inwiefern die Verzeichnisstruktur der entfernten Internetseite übernommen werden soll.


    `-nd' `--no-directories'

    Diese Option gibt an, dass die Verzeichnisstruktur der entfernten Internetseite nicht übernommen werden soll. Alle Daten werden in das aktuelle lokale Verzeichnis kopiert. Hier ist Vorsicht geboten. Existieren zwei Dateien mit gleichem Namen, jedoch in verschiedenen Verzeichnissen, so wird die erste Datei lokal überschrieben, da eine zweite Datei mit gleichem Namen angefordert wird.

    Code
    Beispiel: wget -r -l1 -nd http://www.meineseite.de/

    `-x' `--force-directories'

    Diese Option stellt das Gegenstück zu der Option '-nd' dar. Die Verzeichnisstruktur der angeforderten Seite wird komplett übernommen.

    Code
    Beispiel: wget -r -l1 -x http://www.meineseite.de/

    `-nH' `--no-host-directories'

    Gibt man diese Option beim Download von Webseiten an, so wird die Verzeichnisstruktur vom Server übernommen, jedoch wird der Hostname nicht mit berücksichtigt. Anstatt http://www.meineseite.de/heimat/garten erhält man heimat/garten.

    Code
    Beispiel: wget -r -l1 -nH http://www.meineseite.de/heimat/garten/


    Einschränkende Optionen

    Hiermit sind die Optionen gemeint, mit denen man die zu ladenden Daten noch weiter spezifizieren kann. Will man zum Beispiel nur Bilder von einer Seite herunterladen, so sind die folgenden Optionen sehr sinnvoll.


    `-A --accept '

    Mit dieser Angabe ist es möglich, beim Download nur bestimmte Dateierweiterungen zuzulassen. Dies ist sehr von Nutzen, wenn man zum Beispiel nur Bilder von einer Seite herunterladen will. Angegeben wird nur der Dateityp selber, zum Beispiel jpg oder txt. Wildcards sowie die Angabe des üblicherweise vorhandenen Trennpunkts sind nicht zulässig. Die Angabe von mehreren Dateierweiterungen ist möglich. Diese müssen dann durch ein Komma separiert werden.

    Code
    Beispiel: wget -r -l1 -A jpg,gif http://www.meineseite.de/mediagallerie/

    `-R --reject '

    Diese Option stellt das genaue Gegenstück zur oben angegebenen Option '-A' dar. Alle angegeben Dateierweiterungen werden nicht beim Download berücksichtigt. Dies ist zum Beispiel sinnvoll, wenn man z.B. auf den Download großer Videodaten oder ähnlichem verzichten will.

    Code
    Beispiel: wget -r -l1 -R avi,mpg http://www.meineseite.de/mediagallerie/

    `-L' `--relative'

    Bei der Angabe der Option '-L' folgt wget nur relativen Links. Lautet ein Link in der HTML-Datei 'http://www.meineseite.de/hobbys/garten.html', so wird dieser Verweis beim rekursiven Laden von Daten nicht berücksichtigt. Lautet der Verweis hingegen '/hobbys/garten.html', so wird er beim Download berücksichtigt. Diese Option ist sehr nützlich, wenn man eine Homepage herunterladen will, jedoch die Daten externer Seitenverweise nicht mit laden will.

    Code
    Beispiel: wget -r -l5 -L http://www.meineseite.de/


    Webmin-Modul für wget

    Für das Systemverwaltungs-Programm Webmin, welches HTML-basiert arbeitet, gibt es ein Modul, das via wget Downloads handhaben kann. Vorteil dieser Lösung ist, dass es webbasiert und somit plattformunabhängig ist. So kann man seinen heimischen Server über das HTML-Frontend anweisen, welche Daten heruntergeladen werden sollen. Das Webmin-Modul ist unter der GPL freigegeben.

  • Mit einer entsprechenden robots.txt kann wget daran gehindert werden, z.B. ganze Verzeichnisse zu laden, da sich wget wie ein Crawler verhält - in solchen Fällen hilft der Befehl:

    Code
    wget -r -e robots=off http://meine.domain.de/verzeichnis/

Schon gewusst…?

Dieses Forum ist 100% werbefrei! Du siehst hier weder Banner, PopUps, PopDowns oder sonstige "Verbraucher-Informationen". Werbeblocker brauchst du hier nicht.