Wie kann ich Daten von einer Website scrapen/minen/abgreifen/auslesen (vorzugsweise) mit OSX?

Wie kann ich Daten von einer Website scrapen/minen/abgreifen/auslesen (vorzugsweise) mit OSX?

Ich versuche, Daten von einer Website zu „erfassen“.

Gibt es eine Möglichkeit, ein Programm einfach auf eine URL zu verweisen und alles in dieser Domäne abzurufen? Wie gehe ich dabei unter OSX 10.5 vor? Wenn es wirklich nötig ist, kann ich als letzte Möglichkeit eine Ubuntu- oder Windows-Box verwenden.

Antwort1

wgetSie können den folgenden Befehl verwenden :zum Download verfügbar für Mac OS Xin den meisten Linux-Distributionen enthalten, um den gesamten Inhalt einer Website herunterzuladen: Bilder, CSS, JavaScript, Videos, Flash-Dateien usw.

Sobald Sie es haben, öffnen Sie ein Terminal. Sie möchten es wahrscheinlich so aufrufen:

wget -r -l0 -k http://www.example.com/

Das wird heruntergeladenallesvon http://www.example.com/über Links erreichbar. Die -rOption aktiviert rekursives Herunterladen, sodass mehr als nur die Startseite heruntergeladen wird. Die -lOption legt fest, wie viele Seiten tief nach Links gesucht und heruntergeladen werden soll 0. Wenn ich es auf einstell, wird so weit wie möglich gesucht. Beachten Sie, dass bei einer Website mit dynamischer Seitengenerierung viel heruntergeladen werden kann, da viele URLs auf denselben oder sehr ähnlichen Inhalt verweisen können. Der -kBefehl ist optional und konvertiert wgetalle Links, Bild-Tags usw. an den richtigen Speicherort auf Ihrem lokalen Computer, sodass Sie sie mit einem Webbrowser auf Ihrem Computer anzeigen können und alles ordnungsgemäß funktioniert.

Beachten Sie, dass nur Dateien heruntergeladen werden vonwww.beispiel.com, keine anderen Domänen. Wenn Sie möchten, dass es zu anderen Domänen geht, schalten Sie -Hes mit dem Schalter ein und verwenden Sie dann den Optionsschalter, -Dum die anderen Domänen zu definieren, von denen heruntergeladen werden soll (z. B. -D comments.example.com,beta.example.com). Seien Sie vorsichtig, wenn Sie den Schalter ausgeschaltet lassen -Dund /infinite einstellen, -lkönnten 0Sie versuchen, das gesamte World Wide Web herunterzuladen!

Ein weiterer möglicherweise hilfreicher Schalter ist der -NSchalter, der den Zeitstempel der lokalen Datei auf die vom HTTP-Header auf dem Server bereitgestellte Zeit setzt Last-Modifiedund bei nachfolgenden Downloads keine Dateien herunterlädt, die nicht geändert wurden.

Weitere Informationen finden Sie unterdie wgetDokumentation.

verwandte Informationen