Wie extrahiere ich alle externen Links einer Webseite und speichere sie in einer Datei?

11

Wie extrahiere ich alle externen Links einer Webseite und speichere sie in einer Datei?

Wenn Sie Befehlszeilen-Tools haben, wäre das großartig.

RogerioO
quelle

Antworten:

18

Sie benötigen 2 Werkzeuge, Luchs und awk , versuchen Sie dies:

$ lynx -dump http://www.google.com.br | awk '/http/{print $2}' > links.txt

Wenn Sie Nummerierungszeilen benötigen, verwenden Sie den Befehl nl und versuchen Sie Folgendes:

$ lynx -dump http://www.google.com.br | awk '/http/{print $2}' | nl > links.txt
Ielton
quelle
Ich denke nicht, dass dies für relative URLs funktionieren wird
Sridhar Sarnobat
7

Hier ist eine Verbesserung von Leltons Antwort: Sie brauchen überhaupt kein Awk, denn Luchs hat einige nützliche Optionen.

lynx -listonly -nonumbers -dump http://www.google.com.br

wenn du Zahlen willst

lynx -listonly -dump http://www.google.com.br
Max
quelle
0
  1. Verwenden Sie Beautiful Soup , um die betreffenden Webseiten abzurufen.
  2. Verwenden Sie awk, um alle URLs zu finden, die nicht auf Ihre Domain verweisen

Ich würde Beautiful Soup über Screen Scraping-Techniken empfehlen.

Wesley
quelle
0

Wenn die Befehlszeile keine Kraft ist, können Sie die Firefox-Erweiterung " Alle Links kopieren" verwenden .

Majid Azimi
quelle