sed: Links + Linktexte filtern
Nina_
- programmiertechnik
0 suit0 Vinzenz Mai0 suit
0 seth_not@home
Hi,
hab leider ein kleines sed Script verlegt, mit dem es ganz einfach möglich war, dass man aus einer html source eine Liste erstellt bekommt mit allen Linkzielen und zugehörigen Linktexten.
Leider finde ich das Script weder auf meinem Rechner, noch lässt sich dieses über Google finden :(
Hoffe, ihr habt es noch zur Hand bzw. kennt die Seite auch :)
Großen Danke schonmal
Nina
ich habe "dieses" Script zufällig auf Vorat gekauft und noch eine halbe Packung herumliegen, da waren alle Sprachen gemischt drinnen
nein im ernst:
a) welche Scriptsprache? - php z.B.?
b) wie mächtig soll es sein?
mit ein paar Zeilen (schön geschrieben vielleicht 10) php ist es recht einfach möglich
quelle mit fopen() öffnen
quelle mit fread() lesen
mit preg_match_all() nach Links durchsuchen
mit fwrite() in eine Textdatei schreiben
mit fclose() das File schließen
zugehörige Funktionsbeschreibungen findest du auf http://de.php.net/
Hallo suit,
a) welche Scriptsprache? - php z.B.?
Nina hatte es doch geschrieben: sed
sed ist ein mächtiger _s_tream-_ed_itor zur _nicht_ interaktiven Textbearbeitung. Mehr dazu findest Du auf Deiner Linux-Kiste oder in Deiner cygwin-Umgebung über
man sed
info sed
Ist halt was anderes als solcher Kinderkram wie PHP, Perl oder $programmiersprache ;-)
Freundliche Grüße
Vinzenz
Ist halt was anderes als solcher Kinderkram wie PHP, Perl oder $programmiersprache ;-)
wieder was gelernt ;) ich bin halt ein MS-DOS und Windows Kind
http://de.wikipedia.org/wiki/Sed_(Unix)
Zitat: Für komplexere Aufgaben werden gewöhnlich awk oder Perl benutzt.
mag mächtig sein, aber es ist dennoch nur ein Texteditor ;)
gudn tach!
ich hatte um ca. 16:20 schon mal geantwortet, aber die antwort scheint irgendwie gekillt worden zu sein, weil der forums-daemon abgekackt ist.
naja, jedenfalls hatte ich geantwortet, dass perl eine weiterentwicklung von sed sei, und man normalerweise auf systemen mit sed auch perl finden sollte (oder den admin verhauen). mit perl waere dein problem in etwa wie folgt zu loesen:
perl -e '$_=join "", <>; $t=""; while(/<a [^>]*href="(.*?)"[^>]*>(.*?)</a>/sg){$t.="$1 - $2\n"}; print $t;' < test.html
ist noch ausbaufaehig, z.b. bzgl. ausgabeformat oder falls einfache anfuehrungszeichen bei href erlaubt sein sollen; naja und solche kleinigkeiten.
prost
seth