![]() |
|
|
Themen-Optionen |
|
|
Nach oben #1 |
|
Mensch
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.710
|
Fremde Webseiten mit PHP auslesen und analysieren
Vorwort: Die Anwendung dieser Art der Datenbeschaffung sollte _immer_ mit dem Betreiber der fremden Seite abgesprochen werden oder nur im Rahmen einer Lizenz, falls vorhanden, durchgeführt werden. Ihr solltet euch gegebenenfalls eine rechtliche Beratung zu diesem Thema einholen. Dieses Tutorial befasst sich mit dem Auslesen von Inhalten fremder Webseiten. Ziel ist es, die Wissensgrundlagen zu schaffen um von Partnerseiten bestimmte Informationen zu erhalten. Das Beispiel in diesem Tutorial wird den Tutorialbereich des Forums durchsuchen und eine Linkliste der Tutorien sowie ein paar weitere kleiner Informationen zusammenstellen. Für das Kapitel 3 sollten euch Klassen und Methoden nicht fremd sein. Ist dem nicht so, dann bitte erst hier darüber informieren. Kapitel: Geändert von Jann Hendrik (28.05.2008 um 19:53 Uhr). Grund: link aktualisiert |
|
|
|
|
|
Nach oben #2 |
|
Mensch
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.710
|
1. Auslesen einer fremden Webseite
Das Auslesen einer fremden Webseite ist genauso leicht wie das Öffnen einer Datei. Wir benötigen dafür die Funktionen fopen() und fclose(). PHP-Code:
Geändert von WarrenFaith (14.03.2006 um 19:42 Uhr). |
|
|
|
|
|
Nach oben #3 |
|
Mensch
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.710
|
2. Filtern des gewünschten Bereichs
Noch einfacher dagegen ist das Arbeiten mit der Funktion file_get_contents() welche den Inhalt der Webseite in einem String zurückgibt. Damit ist der Inhalt der Seite leicht zu durchsuchen. Unsere erste Aufgabe wird es sein, alle Links aus dem Unterforum "Tutorials" herauszufiltern. PHP-Code:
Um nur die Thread-Links herauszufiltern nutzen wir den HTML-Code des Forums und können feststellen, dass alle Thread-Links eine eindeutige ID haben: Code:
id="thread_title_xxxx" PHP-Code:
Geändert von WarrenFaith (14.03.2006 um 23:14 Uhr). |
|
|
|
|
|
Nach oben #4 |
|
Mensch
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.710
|
3. Erstellen einer Parserklasse für vBulletin-Foren
Im Idealfall einigt man sich mit dem Webmaster der fremden Seite, dass dieser ein paar Tags in HTML-Kommentaren versteckt oder die erwünschten Informationen direkt in einem Kommentarblock am Anfang einer Seite anbietet. Damit sind aufwendige Parser unnötig und man muss den Parser nicht umschreiben, sobald sich die Struktur der Webseite deutlich ändert. Die vBulletin-Foren haben glücklicherweise eindeutige CSS-Klassen oder ID-Bezeichnungen für bestimmte Elemente, an dene man sich im Quellcode "durchhangeln" kann. So ist z.B. die Seitenanzahl in einem Layer, welches eine im Quellcode einmalige CSS-Klassen und Style-Attributkombination besitzt. Das nachfolgende Beispiel ist eine Parserklasse, welche die externe Durchsuchung von vBulletin-Foren ermöglicht. Die Klasse dient als Aussicht auf Möglichkeiten des durchsuchens fremder Seiten. Ich empfehle daher diese nur als Ideenstütze zu nutzen und die eigenen Fähigkeiten selbst umzusetzen oder die Klasse an die eigenen Bedürfnisse anzupassen. parser.class.php: PHP-Code:
PHP-Code:
Geändert von WarrenFaith (08.02.2007 um 09:47 Uhr). |
|
|
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Frage zum Tut: [PHP] Fremde Webseiten auslesen | the_cRu | PHP-Programmierung | 27 | 10.02.2007 19:59 |
| Mehrere Zeilen auslesen. | Jan | Datenbanken | 17 | 27.06.2006 16:49 |
| [PHP] OOP - eine Einführung | MrNiceGuy | Tutorials | 16 | 11.11.2005 00:05 |
| Datenbank auslesen und Daten in JTable überführen | Lautsprecher | Datenbanken | 5 | 20.10.2005 15:34 |
| [PHP] Textdateien: Lesen und Schreiben von Inhalten | Ben | Tutorials | 1 | 30.07.2005 02:02 |