Frage Gibt es ein Tool, um alle Hyperlinks aus einer HTML-Datei zu entfernen?


Gibt es eine Möglichkeit, dies in Ubuntu zu tun? Ich habe gelesen, dass es in PHP möglich ist, aber ich bin überhaupt nicht mit PHP vertraut.


4
2018-05-29 14:33


Ursprung




Antworten:


Du könntest benutzen sed dafür, aber es funktioniert nur für Links, die in einer einzigen Zeile im HTML-Code sind.

Aktualisieren:

Verdammter gieriger Regex! ;) Dieser sollte jetzt funktionieren!

sed -i 's|<a[^>]\+>|<a>|g' <the-html-file>


3
2018-05-29 14:49



Es verhält sich merkwürdig! Löschen aller Sätze nach einem Verknüpfungsanker in einem Absatz bis zum nächsten Verknüpfungsanker, der nicht entfernt wird. Viele Links so lassen, wie sie sind. :( - 22lk94k943 only
Können Sie eine Beispieldatei angeben? - ortang
Sicher warum nicht. skydrive.live.com/redir?resid=98CCEEFEF56EFF2A!118 - 22lk94k943 only
Ich habe meine Antwort aktualisiert - ortang
Verdammt! Es funktioniert wie ein Messer auf Käse. Danke vielmals. Es wird sehr lehrreich sein, wenn Sie der Antwort die Beschreibung von "Greedy regex" hinzufügen können. - 22lk94k943 only


Hängt davon ab, was Sie tun möchten:

Wenn Sie einen Stapel von Dateien auf Ihrem Computer haben und Sie die Links entfernen möchten, verwenden Sie etwas wie ein kleines Perl - Skript, um das zu entfernen <a ...> ... </a> Stichworte. Sie können andere Tags (oder sogar alle Tags) auf ähnliche Weise entfernen. Mit den richtigen Musterabgleichoptionen kann dieser Ansatz Tags verarbeiten, die sich über mehrere Zeilen verteilen. (Es ist sehr elegant, aber die Details werden nicht in den Rand dieses Beitrags passen).

Wenn Sie versuchen, Dateien auf einem Webserver zu durchsuchen, verwenden Sie Firefox (oder einen anderen Browser), ein Skript, das automatisch Änderungen an den Seiten vor der Anzeige vornimmt.


1
2018-05-29 14:50