kostenloser Webspace werbefrei: lima-city


Links aus HTML Seite rausfiltern

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    t****o

    Hi!
    Ich würde gerne aus einer HTML-Datei die Links rausfiltern und dann ausgeben. Das ganze müsste mit preg_match, file_get_contents und arrays laufen. Ich hab auch schon was bei Google gefunden, das will aber nicht so recht funzen. Kann mir da einer ein Beispiel geben??

    Danke
    telelo
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. s******s

    Hallo telelo,

    wie wäre es mit
    preg_match_all('/(href=)(.*)(>)/U', $seiteninhalt, $links);
    ? In der Variable $seiteninhalt wird die Seite gespeichert, im Array $links die Adressen.


    Gruß
    steffens
  4. m*******t

    erst musst du eben die seite einlesen (mit file_get_contents() oder file()).
    dann kannst du preg_match_all() anwenden

    das ganze sieht dann etwa so aus:
    $inhalt = file_get_contents(DATEI_URL);
    preg_match_all('/<a.*href=(.*?)(?:>|\\ )/', $inhalt, $treffer);
    foreach ($treffer as $trefferausgabe){
            $links .= trim($trefferausgabe[1], "\"'");
            $links .= "<br>";
    }
    echo $links;

    das würde dir die links untereinander ausgeben

    lg

    Beitrag zuletzt geändert: 11.6.2009 19:48:23 von moonfight
  5. n******a

    Du kannst auch phpquery nutzen *g* http://code.google.com/p/phpquery/

    <pre>
    <?php
    $html = utf8_encode(file_get_contents('http://www.spiegel.de/'));
    require('phpQuery/phpQuery/phpQuery.php');
    $doc = phpQuery::newDocument($html);
    phpQuery::selectDocument($doc);
    foreach(pq('a') as $link)
      echo pq($link)->attr('href')."\n";
    ?>
    </pre>


    greets
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!