[PHP] Link aus Quelltext filtern

Dieses Thema im Forum "Webentwicklung" wurde erstellt von [Bensen], 12. Juni 2008 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 12. Juni 2008
    Link aus Quelltext filtern

    Nabend,

    wollte mal fragen ob ihr wisst wie ich aus nen Quelltext nen Link Filtern kann. Also ich baue per cURL eine Verbindung zur Website auf und per "preg_match();" wollte ich dann einen speziellen Link aus dem Quelltext filtern.

    Der HTML Code

    HTML:
    <a href="test?continue_code=32089">Hier klicken um wieder in die Community zu gelangen</a>
    und da möchte ich per PHP, das er mir nur den Link (test?continue_code=32089) ausgibt (also in eine Variable speichert).

    Besten Dank schonmal
     
  2. 13. Juni 2008
    AW: Link aus Quelltext filtern

    hmmm

    Code:
    if( strpos( "test?continue_code=32089", $quelltext))
     echo "test?continue_code=32089";
    
    bin mir da jetzt nicht ganz sicher aber so sollte das auch funktionieren.

    Aber ich denke, das wirst du nicht wollen, ....
    Falls es wirklich ne reExp sein soll must du sagen was alles drin vorkommen kann.
    Wenn ichs ganz falsch verstanden habe, dann versuchs anders zu erklähren
     
  3. 13. Juni 2008
    AW: Link aus Quelltext filtern

    Oben einfügen:
    PHP:
    function  filtertxt ( $text $von $bis
    {
    $pos1  strpos ( $text $von );
    $pos2  strpos ( $text $bis );
    $zwischen  $pos2  $pos1 ;
    $zwischen2  substr ( $text $pos1 $zwischen );
    if(
    $zwischen2  ==  "" )
    {
    return 
    "error" ;
    } else {
    return 
    str_replace ( $von "" $zwischen2 );
    }
    }
    Danach:
    PHP:
    $link  "test?continue_code=" . filtertxt ( $html "<a href=\"test?continue_code=" "\">Hier klicken um wieder in die Community zu gelangen</a>" );
    MfG, Chrisomator
     
  4. 13. Juni 2008
    AW: Link aus Quelltext filtern

    PHP:
    <? php ob_start ();  ?>
    <a href="http://foo.de/?bar1=baz">link1</a>
    <a href="http://foo.de/?bar2=baz">link2</a>
    http://foo.de/?bar=baz
    <?php
        $html 
    ob_get_clean ();
        
    $hrefExp  '(?(?!(href="))(https?://([^\s]+))|(.*)".*\>(.*)\</a\>)' ;

        
    $hrefs  = array();
        
    preg_match_all ( "~ { $hrefExp } ~" $html $hrefs );    

        
    //index 2 => ohne tag         -> http://foo.bar
        //index 4 => mit tag         -> <a href="(.*)"></a>
        //index 5 => beschriftung     -> <a href="">(.*)</a>
        
    $ahrefs  = array( $hrefs [ 2 ],  $hrefs [ 4 ],  $hrefs [ 5 ]);
        unset(
    $hrefs );
        
    $tags  = array();

        
    //links ohne tags
        
    foreach( $ahrefs [ 0 ] as  $index  =>  $link ) {
            if(!empty(
    $link )) {
                
    $tags [] = array(
                    
    'href'  =>  $link ,
                    
    'context'  =>  $link
                
    );    
            }
        }

        
    //links mit tags
        
    foreach( $ahrefs [ 1 ] as  $index  =>  $href ) {
            if(!empty(
    $href )) {
                
    $tags [] = array(
                    
    'href'  =>  substr ( $href 6 ),
                    
    'context'  =>  $ahrefs [ 2 ][ $index ]
                );
            }
        }
        
        unset(
    $ahrefs );
        
    print_r ( $tags );
    ?>
    ausgabe:
    Code:
    Array
    (
     [0] => Array
     (
     [href] => http://foo.de/?bar=baz
     [context] => http://foo.de/?bar=baz
     )
    
     [1] => Array
     (
     [href] => http://foo.de/?bar1=baz
     [context] => link1
     )
    
     [2] => Array
     (
     [href] => http://foo.de/?bar2=baz
     [context] => link2
     )
    
    )
    //edit: öhm ja... jetzt haste alle links^^ pass dir einfach den regex a weng an damit er auf deinen link passt
     
  5. 13. Juni 2008
    AW: Link aus Quelltext filtern

    Jop besten Dank, habs bissel angepasst und jetzt funktioniert es perfekt
     
  6. 10. April 2010
    Links aus Quelltext filtern

    Ja der Fredname sagt eigentlich schon alles...

    Hab halt nen Quelltext wo zwischendurch halt http://**** steht und drumherum halt jede Menge anderer Kram!

    Gibt es eine Möglichkeite jetzt soweit zu filter dass ist am Ende nur die genannten http-Link habe und diese kopieren kann?

    Am besten halt so (Beispiel):

    Code:
    http://ul.to/*******
    http://ul.to/*******
    http://ul.to/*******
    http://ul.to/*******
    http://ul.to/*******
    .
    .
    .
    .
    
    
    Entweder gehts gar nicht oder ganz einfach :lol:

    Danke im Voraus!

    greetz
     
  7. 10. April 2010
    AW: Links aus Quelltext filtern

    Für OCH Links gibt es [G]jDownloader[/G]
     
  8. 10. April 2010
    AW: Links aus Quelltext filtern

    Wenn du Mozilla Firefox benutzt kannst du Firebug installieren. Ein Add on.
    Damit kannst du Seiten auf ihren Quelltext untersuchen.

    Oder du kopierst den Quelltext in den PSPad Editor (einfach googlen). Der sollte html Anweisungen wie z.B Links verschieden Farbig makieren.

    Hoffe ich konnte dir so helfen oder ich lag auch total falsch.
     
  9. 10. April 2010
    AW: Links aus Quelltext filtern

    Das ist mir klar wie Klosbrühe aber hilft mir auch nicht weiter weil der die auch nicht filtert...

    Also ich benutze erstens IE und zweitens würde mir das durchsuchen ja auch nicht helfen, das kann ich ja auch mit STRG+F!
    Und Farbig markiert bringt auch nichts, weil ich dann die Links immernoch manuell kopieren muss...

    Der JDownloader kann halt nur mehrere Links auf einmal kopieren und grabben wenn sie im oben genannten "Format" vorliegen!
     
  10. 11. April 2010
    AW: Links aus Quelltext filtern

    also bei Opera gibt es eine "Links anzeigen"-Funktion, da werden alle Verlinkungen der Seite aufgezählt. Um was genau geht es denn?

    http://www.abload.de/img/unbenannt1ycl.png
     
  11. 12. April 2010
    AW: Links aus Quelltext filtern

    Mein Bruder hat ein Programm geschrieben welches den Quelltext nach Links rausfiltert und diese dann in einer .txt datei speichert.
    Falls Interesse, werde ich ihm bescheidsagen. Glaube aber nicht dass er das er es ohne Gegenleistung herausgibt.

    Gruß
    Rhino
     
  12. 12. April 2010
    AW: Links aus Quelltext filtern

    Entweder verstehe ich dein Problem nicht oder du kennst einen simplen Trick nicht

    Wenn du Firefox hast, drück einfach Strg+G und du kannst schon suchen lassen. Kannst dich dann pro Link durchklicken, ansonsten kopier den Quelltext in den Bluefishtexteditor (Google, freeware), da ist die Strg+G suche um einiges erweiterter.
     
  13. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.