Teile aus einer Webseite extrahieren

Alles, was PHP betrifft, kann hier besprochen werden.

Teile aus einer Webseite extrahieren

Postby Incognito » 17. April 2007 10:29

Ist es möglich mit PHP eine komplette Webseite einzulesen und die Daten aus einen bestimmten Bereich in eine Variable zu packen und weiterzuverarbeiten ?

Dann z.B. aus diesem Bereich


Code: Select all
<span class="online_notice">Online</span></td>
   </tr>

   <tr bgcolor="#AAAAAA">
      <td colspan="2" align="center" style="color: black"><b>Users</b></td>
   </tr>
   
   <tr bgcolor="#CCCCCC" style="color: black">
      <td align="right">Playing</td>
      <td align="center">51</td>



Benötigen täte ich in dem Falle das Online und die 51 Benutzer.

Das ganze brauche ich zum Anzeigen eines Online Status bei einem Onlinespiel.
Incognito
 
Posts: 33
Joined: 21. February 2004 15:20
Operating System: Windows 7

Postby Mätes » 17. April 2007 14:37

mit file_get_contents könntest du dir den inhalt der datei
in einen string schreiben lassen.

anschließend musst du den string durchsuchen.
eventuell den Inhalt zwischen
<span class="online_notice">
und
</span></td>
herausfiltern. z.b. mit strpos oder pregmatch.
ähnlich mit dem anderen wort verfahren.

das ganze ist aber höchste wackelig. wenn der besitzer der seite,
dessen inhalt du mittelfreundlicherweis auslesen möchtes,
die struktur ändert, musst du dein skript natürlich wieder ändern.

m
User avatar
Mätes
 
Posts: 142
Joined: 13. April 2006 09:34
Location: kölle

Postby Incognito » 18. April 2007 09:41

Hmmm, wie in etwa müsste das Script aussehen ?

Zuerst die Seite mit fopen öffnen ?

Dann file_get_contents ?


Nur wie dann weiter ? Hab mir strpos mal angeschaut, werd aber nicht schlau daraus...
Incognito
 
Posts: 33
Joined: 21. February 2004 15:20
Operating System: Windows 7

Postby KingCrunch » 18. April 2007 09:48

Woran genau scheiterst du? Was hast du bisher versucht? Welche Fehler/Probleme traten auf?

Für mich wirkt es gerade zu sehr nach "Bitte macht mal für mich!" weswegen ich nicht so richtig zu motivieren bin ;) Würde gerne erstmal sehn, was du bisher schon versucht hast und wo die Probleme liegen.
Nicht jeder Fehler ist ein Bug ...
KingCrunch
 
Posts: 1724
Joined: 26. November 2005 19:25

Postby Incognito » 19. April 2007 19:55

Gescheitert war ich noch gar nicht.

Wusste nur nicht ob man erst fopen braucht.

Habe es aber jetzt hingekriegt.

Website mit file_get_contents geladen.

Die Position mittels strpos ermittelt.

Und mittels preg_replace überschüssige Zeichen wie < herausgefiltert.

Werde das Script noch etwas verfeinern und dann einsetzen.


Danke für die Hilfe.
Incognito
 
Posts: 33
Joined: 21. February 2004 15:20
Operating System: Windows 7

Postby KingCrunch » 19. April 2007 22:19

Wenn du preg_match inklusive dem optionalen Parameter verwendest, kannst du den Umweg über strpos und danach alles drumherum wegschneiden sparen.
Nicht jeder Fehler ist ein Bug ...
KingCrunch
 
Posts: 1724
Joined: 26. November 2005 19:25

Postby Incognito » 20. April 2007 09:08

Danke für den Tipp.

Werde ich mal testen. Mir war erstmal wichtig das es funktioniert.
Incognito
 
Posts: 33
Joined: 21. February 2004 15:20
Operating System: Windows 7


Return to PHP

Who is online

Users browsing this forum: No registered users and 42 guests