wget - difficult - Wie lade ich alle Links von einer Seite herunter, einschließlich der Links mit unterschiedlichen Pfaden?


0

Stellen wir uns vor, ich möchte die Wikipedia-Seiten aller hier genannten Personen mit einem wget-Befehl herunterladen , möglicherweise mit einer angemessenen Anzahl anderer Seiten, die mich nicht interessieren. Bitte schließen Sie sie nicht. Wenn Sie denken, dass es trivial ist, versuchen Sie es.


Nun, ein Problem ist, dass Sie viele Links haben, die nicht zu Menschen führen. Ich bin mir sicher, dass es diese eine Webseite gibt ( en.wikipedia.org/wiki/William_Bullock_(inventor), aber es gibt auch diese en.wikipedia.org/wiki/Rotary_printing_press und en.wikipedia.org/wiki/Gangrene und wenn Sie nur die Leute und wollen nicht die .. nicht sicher.
Barlop

Antworten:


1
C:\blah>wget -r -l 1 -w 1 -t 1 -T 5 -nd -k -e "robots=off"  http://en.wi
kipedia.org/wiki/List_of_inventors_killed_by_their_own_inventions

Ich kann das nicht schnell testen, da es einige Zeit dauern wird, bis ein Link heruntergeladen ist. Wenn es schnell lief, könnten sie dich blockieren. Wenn Sie -k ausführen, wird dies möglicherweise später ausgeführt und nicht, wenn Sie Strg-c in der Mitte ausführen. Sie können es jedoch auch ausführen lassen oder -k und -nd entfernen und in der Mitte anhalten und sehen, wie es funktioniert .

-r -l 1 <--- sehr wichtig, das ist sehr wichtig, was dein Titel verlangt, um den Links zu folgen, die Links herunterzuladen. (Also ja, einschließlich verschiedener Pfadlinks, aber wenn Sie Links auf fremde Hosts wünschen, brauchen Sie auch -H)

-w 1 -t 1 -T 5 <- also -w 1, um zwischen jeder http-Anfrage 1 Sekunde zu warten, sonst wird der Wikipedia-Server möglicherweise wütend und blockiert Sie oder etwas Mögliches. da sie nicht wirklich wollen, dass irgendjemand ihre Seite spinnt, scheint es. -t 1 (versuche einen Link einmal, wenn er fehlschlägt). -T gibt an, wie lange gewartet werden soll, wenn ein Link nicht heruntergeladen werden kann. Wenn es auf einen toten Link stößt, soll es nicht 20 Sekunden warten und es 20 Mal wiederholen. oder es wird länger dauern, als es sollte, um das Los herunterzuladen. . -w 1 ist das Wichtigste, da Sie keine temporäre Blockade für das Herunterladen von Inhalten erhalten möchten, um den Server herunterzufahren.

-e "robots = off" <--- Dies ist wichtig, da es sonst nicht funktioniert. Dies führt an Wikipedia vorbei und versucht, Spinnen zu stoppen.

-nd <- nicht so notwendig. Es werden nur Verzeichnisse ausgeblendet. Legen Sie die Dateien einfach in einem Verzeichnis ab. Sie können oder nicht sein, was Sie wollen. Vielleicht möchten Sie es weglassen.

-k <- Links konvertieren, sodass sie nicht auf Webseiten im Internet verweisen, sondern auf die heruntergeladenen lokalen Dateien verweisen. Das Problem ist, dass dies anscheinend seine Sache nach dem Download tun könnte, ohne Links zu konvertieren. Deshalb kann ich nicht einfach ein bisschen herunterladen und es wirklich testen. Und Sie könnten es auch manuell tun. mit Suchen und Ersetzen .. auf Ihrer Indexseite Liste_der_Erfinder_durch_Ihre_own_Inventions.htm so alles, was besagt, dass /wiki/James_Douglas,_4th_Earl_of_MortonSie ändern könnten .. Obwohl das wahrscheinlich in Ordnung ist .. Sie könnten -nd weglassen .. Sie erhalten also alle diese Dateien in einem "Wiki" -Unterverzeichnis. Oder Sie können die Dateien bei Bedarf einfach in ein Wiki-Unterverzeichnis verschieben. Stellen Sie entweder sicher, dass Ihr Verzeichnisbaum mit den Links übereinstimmt, oder stellen Sie sicher, dass die Links mit Ihrem Verzeichnisbaum übereinstimmen.

Ich bin ein bisschen durcheinander, wenn ich Websites herunterlade. Ich stoße auf Probleme. Manchmal verwende ich Editpad Pro und Powergrep, um Änderungen an HTML mit regulären Ausdrücken vorzunehmen. Ich konvertiere die Dinge selbst. es ist fummelig. und diese Programme sind nicht kostenlos, andere jedoch. Vorher habe ich das Suchen und Ersetzen mit dem Editor für einzelne Dateien oder ein kostenloses Programm verwendet, das das Suchen und Ersetzen für eine Reihe von Dateien durchführen kann. Und MS Word schneidet manchmal Blöcke bei gedrückter Alt-Taste. Wenn nötig, bearbeiten Sie den HTML-Code. knifflig. Aber diese Wget-Linie sollte irgendwie dahin gelangen.

Manchmal greife ich zu allen Links von einer Seite, habe also nur eine Datei mit Links, dann mache ich wget -i fileoflinks, dann gibt es kein lustiges Geschäft! obwohl ich auch -w 1 -t 1 -T 2 oder so etwas tun würde ... damit der Server nicht ruiniert. Auch mit dieser Methode bekommt man keine lustigen Geschäfte.

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.