Wie kann man Links aus mehreren .html - Dateien (Batch) extrahieren?

...komplette Frage anzeigen

2 Antworten

Ein kleines, selbstgeschriebenes Ruby- oder Perl-Skript mit Regulären Ausdrücken ist wohl die einfachste Methode.

Ich hab mal aus "Reguläre Ausdrücke Kochbuch" von O'Reilly ein Regex rausgesucht und leicht modifiziert, das sollte so ziemlich die eierlegende Wollmilchsau für den Zweck sein.

In Perl: http://pastebin.com/31qk2sSx (wird hier als Spam interpretiert o.O)

Erkennt auch mehrere URLs in einer Zeile.

Zumindest den Perl-Interpreter installieren und das fertige Skript über die Kommandozeile aufrufen kannst du ja wohl hoffentlich.

Wen Du eine der üblichen leistungsfähigen Scriptsprachen installiert hast (PHP, Python, Perl) geht das sehr einfach zu programmieren. Aber Du hast nicht angedeutet, inwiefern Du programmieren kannst.

Andernfalls könnte man mit etwas wie AutoHotkey nachhelfen (um den AddrView Schleifen laufen zu lassen), was aber letztlich AUCH ein wenig Programmieren erfordert.

Was traust Du Dir zu?

Oh man, nein programmieren kann ich kein Stück und eine der üblichen leistungsfähigen Scriptsprachen (PHP, Python, Perl) hab ich auch nicht installiert. das hört sich auch echt schwer an. Naja und AutoHotkey (um den AddrView Schleifen laufen zu lassen). Okay ich kann es ja mal mit den beiden Sachen versuchen, wenn du mir bitte sagst, wie das geht.

0
@KleinOrange

Eventuell noch ein Tipp zum Einspielen mit dem Makrorekorder:

Du erstellst mit dem eine Automatisierung für ein einzelnes Dokument. Du wirst dabei nicht restlos alles automatisiert kriegen: Mindestens zum Speichern der Links wirst Du wohl irgendwie was als Dateinamen vergeben müssen. (Es sei denn, Du könntest mit Copy & Paste arbeiten, also alle Links aus dem AddrView kopieren und in einem Texteditor nebenan fortlaufend einfügen...)

Wenn also was nicht automatisierbares übrigbleibt (wo Du per Tastatur eingreifen müßtest), legst Du den Handlungsablauf von genau dem Schritt unmittelbar danach bis zu genau wieder dem Schritt unmittelbar davor auf ein Makro. Dazu mußt Du gegebenenfalls auch ein paar Runden drehen, ehe das korrekt so klappt, wie es soll. Navigiere nach Möglichkeit zwischendurch nur mit Tastatur, das macht die Funktion sicherer (gegen Fensterverschiebungen) und eine eventuelle Nachbearbeitung einfacher (wo Du nicht von Mauspositionen zurückrechnen mußt, was da wohl unter der Maus gelegen haben mochte, um zu verstehen, was da der Sinn der Aktion war).

Nachdem das Makro einmal steht, legst Du es auf einen Hotkey und läßt es probeweise durchlaufen. Das sollte Dir die Arbeit schonmal deutlich erleichtern.

Wenn Du dann Lust verspürst, die Sache voll zu automatisieren (genug Dateien übrig sind), dann melde Dich nochmal!

=============

Ansonsten kann natürlich mit ein wenig Anpassung auch der Weg über ein Script (von nex4k angeboten) sinnvoll sein. Womit Du weniger Arbeit hast, stellst Du wahrscheinlich erst hinterher fest... Aber anpassen mußt Du letztlich ein paar Kleinigkeiten in beiden Fällen. Den Sprung ins Wasser der Programmierung wirst Du wohl tun müssen.

1
@WhiteGandalf

Das Skript macht definitiv weniger Arbeit / kostet weniger Zeit da er ja in beiden Fällen irgendwas installieren muss.

Mit einem einzigen kurzen Befehl lässt es sich aufrufen und dabei beliebig viele Dateinamen (Auch Globs wie ordner/*.xyz was die Sache noch simpler macht) zur Verarbeitung übergeben. Umleiten der Ausgabe in eine Datei ist auch eine billige Sache.

$ ruby url-extractor.rb dateien/*.html > gefundene-links.txt

(Ja, das geht auch mit der verkrüppelten Windoof-Kommandozeile!)

3
@nex4k

Für zukünftige Basteleien hätte er auch eindeutig mehr davon...

3

Was möchtest Du wissen?