HTML Seite auslesen

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

  • HTML Seite auslesen

    Hi...

    ich möchte gerne Ergebnisse aus einer Seite auslesen.
    zb. folgende Seite:
    http://stb.liga.nu/cgi-bin/WebObject...onship=OS+2007

    Unter der Überschrift: Spieltermine - Rheinland 2007
    sind die Spieltermine aufgelistet und die Ergebnisse. Ich würde gerne zum einen diese Tabelle mit den Spielterminen auslesen um zum anderen nur die Ergebnisse.

    wenn ich folgenden code verwende klappt es zwar für ein Ergebnis, aber leider nicht für alle:
    PHP-Code:

    <?PHP
      
      $subject 
    '<td align=\"center\">12:9&nbsp;</td>';
     
      
    $pattern '@<td align="center">(.*)&nbsp;</td>@is';
      
      
    $result preg_match($pattern$subject$subpattern);
      
      echo 
    '<p>Der verwendete Reguläre Ausdruck trifft auf den zu durchsuchenden Text '.
           ((
    $result) ? '' 'nicht ').'zu.</p>';
      
      echo 
    '<pre>'.print_r($subpatternTRUE).'</pre>';
    ?>
    könnte mir jemand hier weiterhelfen? wäre super!

  • #2
    ch habs gepackt zumindest mal die Tabelle mit den ganzen Spielterminen auszulesen:

    PHP-Code:

    <?
    $handle = fopen('http://stb.liga.nu/bsp.htm', 'r'); 

    while (!feof($handle)) 

    $html .= fread($handle, 4096); 


    $begin = '<h2>Spieltermine&nbsp;-&nbsp;Ostsaar 2007</h2>'; 
    $end = '<h2>Spieler&nbsp;-&nbsp;Sommer 2007</h2>'; 

    $beginloc = strpos($html, $begin) + strlen($begin); 
    $endloc = strpos($html, $end); 

    $html = substr($html, $beginloc, $endloc - $beginloc); 
    echo $html;

    ?>
    aber wie ersetze ich jetzt zum Beispiel alle Links oder Teamnamen durch einen anderen?
    oder wie lese ich nur die Ergebnisse aus?

    Könnte mir hierbei jemand helfen?

    Kommentar


    • #3
      oder wie lese ich nur die Ergebnisse aus?
      Könntest ja z.B. über dein $html einen RegExp drüberlaufen lassen, der alle Zeilen einer Tabelle ausliest. Diese Zeilen kannst du dann wie es dir beliebt weiter zerlegen. z.B. mit preg_match_all() und diesem Pattern
      PHP-Code:
      $reg '/<tr>(.*)<\\/tr>/isU'
      Gruss

      tobi
      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

      Kommentar


      • #4
        Hallo...

        ich bin nicht mehr ganz so firm in php ...

        PHP-Code:
        $reg '/<tr>(.*)<\/tr>/isU'
        was soll das isU sein?

        Wie trenne ich dann zB: Heimmannschaft, Gastmannschaft, etc...??

        Gruß und Danke

        Kommentar


        • #5
          "isU" sind sog. Modifier, also Optionen für den Regulären Ausdruck.
          • i - ignoriert Groß und Kleinschreibung im zu durchsuchenden Text.
          • s - erkennt das Suchmuster auch über mehrere Zeilen.
          • U - Macht den Ausdruck weniger hungrig (sonst würde der Ausdruck evtl. das erste <tr> sowie das allerletzte </tr> als passend erkennen).
          [FONT="Helvetica"]twitter.com/unset[/FONT]

          Shitstorm Podcast – Wöchentliches Auskotzen

          Kommentar


          • #6
            was soll das isU sein?
            Sorry aber

            Gruss

            tobi
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar


            • #7
              Original geschrieben von Mistert77
              was soll das isU sein?
              http://www.php.net/manual/de/referen....modifiers.php

              Wie trenne ich dann zB: Heimmannschaft, Gastmannschaft, etc...??
              explode

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

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

              Kommentar


              • #8
                Original geschrieben von unset
                "isU" sind sog. Modifier, also Optionen für den Regulären Ausdruck.
                • i - ignoriert Groß und Kleinschreibung im zu durchsuchenden Text.
                • s - erkennt das Suchmuster auch über mehrere Zeilen.
                • U - Macht den Ausdruck weniger hungrig (sonst würde der Ausdruck evtl. das erste <tr> sowie das allerletzte </tr> als passend erkennen).
                DANKE an unset

                Kommentar


                • #9
                  Original geschrieben von jahlives
                  Könntest ja z.B. über dein $html einen RegExp drüberlaufen lassen, der alle Zeilen einer Tabelle ausliest. Diese Zeilen kannst du dann wie es dir beliebt weiter zerlegen. z.B. mit preg_match_all() und diesem Pattern
                  PHP-Code:
                  $reg '/<tr>(.*)<\\/tr>/isU'
                  Gruss

                  tobi
                  was soll das mit dem regexp?
                  kann das in der function list nicht finden?

                  Wenn ihr so gütig sein könntet?!

                  DANKE

                  Kommentar


                  • #10
                    PCRE
                    Zuletzt geändert von tontechniker; 28.09.2007, 15:37.
                    Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

                    Kommentar


                    • #11
                      also irgendwie bekomme ich das nicht in mein Skript mit integriert mit dem

                      PHP-Code:
                      $reg '/<tr>(.*)<\/tr>/isU'
                      so dass ich die einzelnen Zeilen als arra habe.

                      .....hat jemand ne kleine Hilfestellung?

                      Kommentar


                      • #12
                        Du hast den $reg aber schon in einer RegExp Funktion verwendet, oder ? Dieses Pattern liest dir alle Tabellenzeilen aus und funzt.
                        Zum Testen von regulären Ausdrücken bietet sich z.B. http://regexp-evaluator.de/evaluator/ an
                        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                        Kommentar


                        • #13
                          Hallo

                          Habe mir den Script zu nutze gemacht. Mein problem ist das er die Links auf meine Domain umrubelt. Ich möchte baer das die Links auf die Orginalseite verlinken. Hier der Script.

                          <?php
                          $handle = fopen('http://ssvb.org/frontend/view_liga.php?hid=1&liga=134-1-1-0-20-00', 'r');

                          while (!feof($handle))
                          {
                          $html .= fread($handle, 4096);
                          }

                          $begin = '<tr><td height="400" valign="top">';
                          $end = '<!--ERGEBNISDIENST-->';

                          $beginloc = strpos($html, $begin) + strlen($begin);
                          $endloc = strpos($html, $end);

                          $html = substr($html, $beginloc, $endloc - $beginloc);
                          echo $html;

                          ?>

                          Hier der Link !

                          http://volleyball-bischofswerda.de/4.php

                          und der orginale

                          http://ssvb.org/frontend/view_liga.p...34-1-1-0-20-00

                          Danke schon mal für eure Hilfe.

                          Kommentar


                          • #14
                            http://www.php-faq.de/q/q-regexp-links-absolut.html

                            Kommentar


                            • #15
                              Danke aber das Hilft mir auch nicht weiter. Weil ich ja die tabelle durch den Sript mir hole ???

                              Oder Kannst du mir das genauer erklären ?

                              Kommentar

                              Lädt...
                              X