Auswerten von Datein bzw Quelltext

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Auswerten von Datein bzw Quelltext

    Hi @ all

    Allso ich hab das Forum durchsucht und hab sehrviel gefunden
    Aber ich habs trotzdem net hinbekommen

    Allso Ich will aus einen Quelltext einer Homepage (single-city.de)
    Die User rauszufiltern das hat den zweck eine Datenbank zu erstellen....


    ICh hab es geschaft den quelltext soweit rauszufilltern

    ---->

    <!--beginn4 -->
    <tr valign="top" bgcolor="#EEEEEE">
    <td width="6%" class="vk">Ja</td>
    <td width="4%" class="vk">Ja</td>
    <td width="31%" class="vk"><a href="[COLOR=blue]userlink[/COLOR] " target="_self">[COLOR=red]user[/COLOR]</a></td>
    <td width="5%" align="right" class="vk">0</td>
    <td width="8%" align="center" class="vk">m</td>
    <td width="5%" class="vk"><div align="center">³|</div></td>
    <td width="41%" class="vk">[COLOR=blue]beschreinbug[/COLOR]</td>
    </tr>
    <!--beginn3 -->
    <tr valign="top" bgcolor="#DDDDDD">
    <td width="6%" class="vk">Ja</td>
    <td width="4%" class="vk">Ja</td>
    <td width="31%" class="vk"><a href="[COLOR=blue]userlink2[/COLOR] " target="_self">[COLOR=red]user2[/COLOR]</a></td>
    <td width="5%" align="right" class="vk">15</td>
    <td width="8%" align="center" class="vk">w</td>
    <td width="5%" class="vk"><div align="center"></div></td>
    <td width="41%" class="vk">[COLOR=blue]beschreinbug[/COLOR]</td>
    </tr>
    <!--beginn4 -->

    ---->

    Das rot Makierte will ich rausfiltern (logischerweise variiren die usernamen)

    Das blau Makierte sind Sachen die variiren und die ich NET brauch.


    thx im vorraus

    mfg Kangar00


    PS: Diesen code benutze ich bis jeze :

    PHP-Code:
    <?

    $url = "meine url";
    $text=implode("\n",file($url));
    $before="<!--beginn4 -->";
    $after="<!--beginn5 -->";
    $str=substr($text,strpos($text,$before)+strlen($before));
    $str=substr($str,0,strpos($str,$after));
    echo $str;
    ?>
    Zuletzt geändert von Kangar00; 15.08.2005, 18:03.

  • #2
    preg_match_all und reguläre ausdrücke sind dein freund...

    P.S.: Darfst du das? Nicht jeder sieht es gerne wenn der Content gegrabbed wird...
    Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
    var_dump(), print_r(), debug_backtrace und echo.
    Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
    Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
    Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

    Kommentar


    • #3
      Danke ich werde es versuchen

      Ich hab ihn net gefragt ich wollte selber nur mal gerne wissen welche user namen es am meisten gibt ... ich benutze es ja net um werbung zu verschicken oder es online zu stellen .

      mfg Kangar00

      Kommentar


      • #4
        OffTopic:

        6 Rechtschreibfehler
        4 Ausrucksfehler

        ...und das ganze in 5 "Sätzen"!
        Allso Ich will aus einen Quelltext einer Homepage (single-city.de)
        Die User rauszufiltern das hat den zweck eine Datenbank zu erstellen....


        Bei solchen Formulierungen verliert man die Lust weiterzulesen...




        Wo kämen wir hin, wenn jeder sagte: Wo kämen wir hin? und keiner ginge, um zu sehen, wohin wir kämen, wenn wir gingen?

        Kommentar


        • #5
          Ich hab es jetzt so versucht... Und es garb keinen Fehler, aber auch nicht das was ich wollte ...
          Er sagte immer nur Ja Ja,ja ( das sind Textzeilen aus dem Quellcode aber net die ich wollte .... )

          PHP-Code:
          <?

          $url = "meine url";
          $text=implode("\n",file($url));
          $before="<!--beginn4 -->";
          $after="<!--beginn5 -->";
          $str=substr($text,strpos($text,$before)+strlen($before));
          $str=substr($str,0,strpos($str,$after));

          preg_match_all("|<[^>]+>(.*)</[^>]+>|U",
             "$str;",
             $ausgabe, PREG_PATTERN_ORDER);
          echo $ausgabe[0][0] . ", " . $ausgabe[0][1] . "\n";
          echo $ausgabe[1][0] . ", " . $ausgabe[1][1] . "\n";
          ?>
          PS : ich bin ne gerade eine Leuchte in php...
          Zuletzt geändert von Kangar00; 15.08.2005, 18:03.

          Kommentar


          • #6
            Was du dort machst, ist den Inhalt zwischen zwei Tags herauszufinden. Du benötigst aber den Inhalt zwischen zwei <a>-Tags.

            P.S.: Beim schließenden Tag würde ich eine Backreference verwenden...!
            Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
            var_dump(), print_r(), debug_backtrace und echo.
            Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
            Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
            Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

            Kommentar


            • #7
              Backreference ?? sorry ich kan dir net ganz folgen wie ich schon sage bin nen anfänger

              Kommentar


              • #8
                PHP-Code:
                preg_match_all('|<a[^>]* target="_self">(.*)</a>|U',
                   
                $str,
                   
                $ausgabe);
                echo 
                '<pre>' print_r($ausgabetrue) . '</pre>';
                ?> 
                oder so...
                wozu Backreferences, wenn er einmal ein paar Namen finden will? Das Thema ist doch auch so kompliziert genug

                @Kangar00
                brich mal die URL in deinen Posts um, hab schon wieder nen horizontalen Scrollbalken >_>

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  Thx das funzt ja super

                  Kommentar


                  • #10
                    Allso mien 2 pro ich hoffe auch da könnt ihr so gut helfen
                    Wenn ich allso das ausleseverfahren starte gibt er mir das aus :



                    <pre>Array
                    (
                    [0] => Array
                    (
                    [0] => <a href="0---BABY---0" target="_self">0---BABY---0</a>
                    [1] => <a href="0---BABY-****************---0" target="_self">0---BABY-****************---0</a>
                    [2] => <a href="0---BAD-BABY-LOPEZ---0" target="_self">0---BAD-BABY-LOPEZ---0</a>
                    [3] => <a href="0---BOSS---0" target="_self">0---BOSS---0</a>
                    [4] => <a href="0---CAPPUCCINO---0" target="_self">0---CAPPUCCINO---0</a>

                    [5] => <a href="0---CASANOVA51---0" target="_self">0---CASANOVA51---0</a>
                    [6] => <a href="0---CHICO-PUERTO-RICO" target="_self">0---CHICO-PUERTO-RICO</a>
                    [7] => <a href="0---ESMER---0" target="_self">0---ESMER---0</a>
                    [8] => <a href="0---ESMERBOMBA---0" target="_self">0---ESMERBOMBA---0</a>
                    [9] => <a href="0---GINHO" target="_self">0---GINHO</a>
                    [10] => <a href="0---K-U-R-D-E---0" target="_self">0---K-U-R-D-E---0</a>


                    )

                    [1] => Array
                    (
                    [0] => 0---BABY---0
                    [1] => 0---BABY-****************---0
                    [2] => 0---BAD-BABY-LOPEZ---0
                    [3] => 0---BOSS---0
                    [4] => 0---CAPPUCCINO---0
                    [5] => 0---CASANOVA51---0
                    [6] => 0---CHICO-PUERTO-RICO
                    [7] => 0---ESMER---0
                    [8] => 0---ESMERBOMBA---0
                    [9] => 0---GINHO
                    [10] => 0---K-U-R-D-E---0

                    )

                    )


                    ---->


                    So nun zu meiner frage kann man es so konvertirern, dass es so Nacher da steht? :

                    $user="0---BABY---0";

                    $user1="0---BABY-****************---0";
                    $user2="0---BAD-BABY-LOPEZ---0";
                    $user3="0---BOSS---0";
                    $user4="0---CAPPUCCINO---0";
                    $user5="0---CASANOVA51---0";
                    $user6="0---CHICO-PUERTO-RICO";
                    $user7="0---ESMER---0";
                    $user8="0---ESMERBOMBA---0";
                    $user9="0---GINHO";
                    $user10="0---K-U-R-D-E---0";


                    mfg Kangar00

                    Kommentar


                    • #11
                      PHP-Code:
                      $user = array();
                      foreach (
                      $ausgabe[1] as $value)
                       
                      $user[] = $value

                      echo '<pre>' print_r($usertrue) . '</pre>'
                      das ist übrigens ein Array, ja? Wenn du's nicht kannst, lernen ist dafür unabdingar!

                      Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                      bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                      Wie man Fragen richtig stellt

                      Kommentar


                      • #12
                        So habs ausprobiert und es geht leider net das is der code
                        PHP-Code:

                        $url 
                        "meine url";
                        $text=implode("\n",file($url));
                        preg_match_all('|<a[^>]* target="_self">(.*)</a>|U',
                           
                        $str,
                           
                        $ausgabe);
                        $user = array();
                        foreach (
                        $ausgabe[1] as $value)
                         
                        $user[] = $value
                        echo '<pre>' print_r($usertrue) . '</pre>'
                        er sagt immer Fehler in Zeile 10
                        (echo '<pre>' . print_r($user, true) . '</pre>'


                        PS: ich hab gesagt ich bin anfänger

                        Kommentar


                        • #13
                          Original geschrieben von Kangar00
                          PHP-Code:
                          $user[] = $value 
                          und was fehlt am ende dieser zeile ...?
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            btw.
                            Original geschrieben von ghostgambler
                            brich mal die URL in deinen Posts um, hab schon wieder nen horizontalen Scrollbalken >_>
                            bitte befolgen!

                            Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                            bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                            Wie man Fragen richtig stellt

                            Kommentar


                            • #15
                              ; danke

                              Kommentar

                              Lädt...
                              X