Wie man Wget verwendet, um Websites auf Ihren PC herunterzuladen

Haben Sie sich jemals gefragt, ob es eine Möglichkeit gibt, eine Website ohne Webbrowser herunterzuladen? Sie haben Glück. Mit der Kraft der Linux-Befehlszeile ist alles möglich. Es gibt mehrere Methoden, um diese Aufgabe zu erledigen, aber in diesem Artikel konzentrieren wir uns auf wget.
Was ist wget?
wget ist ein GNU-Befehlszeilenprogramm zum Abrufen von Inhalten von Webservern. Als Downloader ist wget sehr leistungsfähig. wget kann mit mehreren Protokollen arbeiten, wie HTTP, HTTPS und FTP. Weitere Funktionen des wget-Programms umfassen:
- Fähigkeit, still oder im Hintergrund zu arbeiten
- Integriert in Linux-Skripte oder CRON-Jobs
- Kann mehrere Downloads gleichzeitig durchführen
- Lädt Dateien herunter, die ein Passwort erfordern
Warum wget?
Während es eine Vielzahl von Tools gibt, die Website-Aktivitäten durchführen können, ermöglicht wget einen breiten Anwendungsbereich. Es gibt dem Benutzer die Möglichkeit, ohne Webbrowser zu arbeiten, indem es:
- eine vollständige Kopie einer Website herunterlädt
- eine bestimmte Datei von einer Website herunterlädt
- das Abrufen einer Datei auf Anfrage automatisiert
- ein Dokument von einem Authentifizierungsportal abruft
wget ist auch in den meisten Linux-Distributionen integriert, sodass es von Anfang an verfügbar ist und keine weitere Installation erforderlich ist.
wget Grundlagen
Der Einstieg in wget ist ziemlich einfach. Öffnen Sie zuerst ein Linux-Terminal.
Sobald ein Terminalfenster geöffnet ist, können Sie wget wie unten gezeigt ausführen:
wget URLErsetzen Sie “URL” durch die genaue URL der Website.
Um eine teilweise heruntergeladene Datei fortzusetzen, verwenden Sie einen -c Schalter in Ihrem Befehl wie folgt:
wget -c URLUm Ihren wget-Download still zu machen, fügen Sie den -q Schalter zu Ihrem ursprünglichen wget-Befehl hinzu:
wget -q URLWenn Sie sich über die richtige Verwendung der Optionen innerhalb von wget nicht sicher sind, verwenden Sie Folgendes:
wget --helpNeben Websites können Sie auch eine Datei mit wget herunterladen. Zum Beispiel:
wget https://example.com/file.zipEs würde einfach die Datei abrufen und im aktuellen Verzeichnis speichern.
Wenn Sie unter einem anderen Dateinamen oder an einem anderen Ort speichern möchten, verwenden Sie das -O Flag.
wget https://example.com/file.zip -O ~/Documents/my_downloaded_file.zipFTP-Optionen
Wie bereits erwähnt, unterstützt wget auch FTP. Wenn Sie einfach eine FTP-Website angeben:
wget ftp://ftp.example.comwget geht davon aus, dass Sie einen anonymen Login wünschen. Alternativ können Sie Dinge wie Benutzername und Passwort manuell mit den folgenden Flags angeben:
--ftp-user=USER: gibt den Benutzernamen für den Login an--ftp-password=PASS: gibt das Passwort an--no-passive-ftp: deaktiviert den passiven Übertragungsmodus
Timeouts, Wiederholungen und fehlgeschlagene Downloads
Schließlich bietet wget mehrere Optionen in Bezug auf Serververbindungsprobleme und Timeouts. Nicht alle Fehler können natürlich behoben werden, aber die folgenden Flags sollen helfen, mit Serverproblemen umzugehen:
--tries=NUMBER: gibt die Anzahl der Versuche an, den Download zu wiederholen--retry-connrefused: Wiederholt den Download, auch wenn die Verbindung vom Server verweigert wird--timeout=SECONDS: globale Einstellung – wie lange zu warten ist, bevor Timeouts auftreten--wait=SECONDS: wie lange zwischen erfolgreichen Downloads gewartet werden soll (wenn wiederholt)
Wer würde wget verwenden?
Wenn Sie diesen Beitrag lesen, denken Sie vielleicht: “Das klingt kompliziert und viel schwieriger als die Verwendung eines Webbrowsers”, aber jeder kann einen Nutzen aus diesem Dienstprogramm ziehen, sei es als Systemadministrator oder Programmierer. Im Folgenden finden Sie zwei Beispiele, wie ich diesen Befehl im Laufe meines Tages verwende, wobei sich meine Rolle manchmal ändert.
Es erleichtert meine Arbeit als Sicherheitsforscher, da ich diesen Befehl planen kann, um mehrere Websites gleichzeitig herunterzuladen. Ich kann dies tun, indem ich eine Textdatei (mit einem beliebigen Texteditor) erstelle, die eine Anzahl von URLs in einer Liste enthält (eine URL pro Zeile). Durch die Ausführung des folgenden Befehls mit dem -i Schalter wird wget jede Website in der Liste herunterladen.
wget -i download_file_name URLAls Systemadministrator kann ich Dokumente aus passwortgeschützten Bereichen problemlos abrufen. Dies hilft Ihnen möglicherweise offline nicht, aber durch das Ausführen von wget können Sie Anmeldeinformationen zu einer Website hinzufügen.
wget --user=user_id --password=user_password URLDa haben Sie es! War es so schwierig, wie Sie dachten? Die Automatisierung Ihrer Aktionen mit wget spart Ihnen Zeit und gibt Ihnen die Möglichkeit, auch offline zu arbeiten. Was haben Sie zu verlieren?
Hinterlassen Sie einen Kommentar unten und lassen Sie uns wissen, ob Sie dies nützlich fanden.