Links aus HTML-Seite extrahieren

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von Sylexx, 17.11.2010.

  1. Sylexx

    Sylexx Grünschnabel

    Dabei seit:
    17.11.2010
    Beiträge:
    6
    Zustimmungen:
    0
    Hallo,

    ich möchte aus einer lokalen HTML-Datei bestimmte Links extrahieren. Die Vorgehensweise ist durch Aufgabenstellung vorgeschrieben:
    1. alle Zeilenumbrüche "\n" durch Leerzeichen ersetzen (sodass alles in einer Zeile)
    2. Dann beim relevanten <TAG> (in diesem fall "a") ein Zeilenumbruch einfügen
    3 Grep anwenden

    Punkt 1 ist schnell durch >> tr "\n" " " << erledigt, beim 2. Punkt weiss ich noch nicht so ganz weiter...vor allem wo und wie ich dann dieses Leerzeichen einfuegen soll (hinter </a>?)
    Grep (Punkt 3) sollte mir eigentlich keine Schwierigkeiten bereiten.

    Hat jemand eine Idee? Wäre echt dankbar!!!
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Damit Du mit grep ein brauchbares Ergebnis erziehlst, musst Du ja '<a ...> ... </a>' separat in einer Zeile stehen haben. Damit muesstest Du Dir doch ueberlegen koennen, wo die Zeilenumbrueche hinsollen, oder nicht?
     
  4. Sylexx

    Sylexx Grünschnabel

    Dabei seit:
    17.11.2010
    Beiträge:
    6
    Zustimmungen:
    0
    Ich denke mal hinter dem </a>...
    Kann man das auch mit tr umsetzen?
     
  5. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Stimmt, aber Du benoetigst noch einen zweiten Zeilenumbruch an einer weiteren Stelle!
    Ich denke, sed ist dazu besser geeignet. tr bezieht sich auf einzelne Zeichen, waehrend sed mit Zeichenketten umgehen kann.
     
  6. #5 Aqualung, 17.11.2010
    Aqualung

    Aqualung Routinier

    Dabei seit:
    12.02.2008
    Beiträge:
    404
    Zustimmungen:
    0
    Code:
    wget http://sed.sourceforge.net/grabbag/scripts/list_urls.sed
    chmod +x list_urls.sed
    ./list_urls.sed <foo.html>
     
  7. Sylexx

    Sylexx Grünschnabel

    Dabei seit:
    17.11.2010
    Beiträge:
    6
    Zustimmungen:
    0
    Leider sollen wir das ganze ohne sed realsieren...

    Sinnig wäre es doch dann, vor dem "href" einen weiteren Umbruch zu machen.
     
  8. #7 Aqualung, 18.11.2010
    Aqualung

    Aqualung Routinier

    Dabei seit:
    12.02.2008
    Beiträge:
    404
    Zustimmungen:
    0
    Dann solltest Du den zugelassenen Wekzeugkasten genauer eingrenzen,
     
  9. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  10. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Ohne es ausprobiert zu haben, koennte Dir die Option '-o' von grep weiterhelfen. Dann kannst Du sogar den 2. Punkt der Anweisung ueberspringen.
     
  11. Sylexx

    Sylexx Grünschnabel

    Dabei seit:
    17.11.2010
    Beiträge:
    6
    Zustimmungen:
    0
    Ich habe mittlerweile in jeder Zeile einen Link stehen, in der Form
    href="http://Link" target="" etc.

    So, nun möchte ich egrep anwenden, doch das bereitet mir noch erhebliche Schwierigkeiten.
    egrep soll praktisch nur das http://www.name.de heraussuchen. Der Rest soll weg.
    Zudem soll noch gefiltert werden, ob es sich um http:// , https:// oder ftp handelt, also der Anfang des Links.

    Bräuchte echt ein Rat...
     
Thema:

Links aus HTML-Seite extrahieren

Die Seite wird geladen...

Links aus HTML-Seite extrahieren - Ähnliche Themen

  1. Linksys-Router mit offizieller DD-WRT-Unterstützung

    Linksys-Router mit offizieller DD-WRT-Unterstützung: Linksys und NewMedia-NET haben die Linux-basierte alternative OpenSource-Firmware für WLAN-Router und eingebettete Systeme, »DD-WRT«, auch für die...
  2. Linksys WRT1900ACS fit für OpenWRT

    Linksys WRT1900ACS fit für OpenWRT: Im letzten Jahr hat Belkin mit dem Linksys WRT1900AC einen Nachfolger des in Open-Source-Kreisen beliebten WLAN-Routers WRT54G auf den Markt...
  3. Mozilla Foundation plant gesponsorte Links

    Mozilla Foundation plant gesponsorte Links: Mozilla plant, mit dem Einblenden von Werbeflächen zusätzliche Einnahmequellen zu erschließen, will dazu aber maßvoll vorgehen. Firefox-Nutzer...
  4. Linksys WRT 1900AC tritt in die Fußstapfen des WRT54G

    Linksys WRT 1900AC tritt in die Fußstapfen des WRT54G: Linksys, ein zu Belkin gehörender Hersteller von Netzwerkhardware für den Heimbereich, hat mit dem Linksys WRT 1900AC einen Nachfolger des in...
  5. Nützliche Links zu openSUSE

    Nützliche Links zu openSUSE: Nützliche Links zu openSUSE: Schickt mir doch bitte eine Private Nachricht, falls ihr noch zusätzliche Themen habt, die hier unbedingt aufgelistet...