Hallo php-Forum, ich bin frisch angemeldet und hoffe auf Unterstützung.
Ich möchte für eine Plattform die Möglichkeit implementieren, Fotos über Twitter einzureichen. Die Software muss also in einem Stream von Twitter-Nachrichten die Links auswerten und die entsprechenden Bilder finden.
Das Problem: Es gibt eine Vielzahl verschiedener Dienste, die Bilder hosten und dann den Link darauf auf Twitter posten. Das verlinkte Bild wird selbstverständlich nicht direkt angezeigt, sondern eingebunden in eine Website, mit weiteren Thumbnails, Werbung, etc. (Beispiel Another for @shawnelledge on Twitpic )
Die Aufgabe ist also: Dem Link folgen und herausfinden, hinter welchem img-Tag das wichtigste Bild steckt. Man könnte die Struktur der Seiten manuell analysieren, das ist aber wegen der vielen verschiedenen Dienste eher auswegslos.
Mein Ansatz ist bisher: Das eigentliche Bild wird sehr wahrscheinlich die größte Grafik auf der Seite sein. Also muss ich auf der Seite (wie dem oben verlinkten Beispiel) das img-Tag finden, das am größten angezeigt wird.
Es gibt PHP-Skripte für Zugriff auf das DOM einer Seite (PHP Simple HTML DOM Parser), sowie für die CSS-Deklarationen (CSS parser - PHP Classes) Diese beiden so zu kombinieren, dass auch verschachtelte Elemente etc. zuverlässig erkannt werden, sodass für jedes img-Tag die Größe ausgelesen werden kann, wird aber kompliziert.
Nach der langen Vorred also meine Fragen:
- kennt jemand eine Bibliothek, die HTML und CSS parsen kann und dann für jedes Element Zugriff auf die Formatierungen bietet?
- Oder gibt es vielleicht noch eine bessere Strategie, um mein Ziel zu erreichen, also das Bild auf so einer Seite zu erkennen?
Ich möchte für eine Plattform die Möglichkeit implementieren, Fotos über Twitter einzureichen. Die Software muss also in einem Stream von Twitter-Nachrichten die Links auswerten und die entsprechenden Bilder finden.
Das Problem: Es gibt eine Vielzahl verschiedener Dienste, die Bilder hosten und dann den Link darauf auf Twitter posten. Das verlinkte Bild wird selbstverständlich nicht direkt angezeigt, sondern eingebunden in eine Website, mit weiteren Thumbnails, Werbung, etc. (Beispiel Another for @shawnelledge on Twitpic )
Die Aufgabe ist also: Dem Link folgen und herausfinden, hinter welchem img-Tag das wichtigste Bild steckt. Man könnte die Struktur der Seiten manuell analysieren, das ist aber wegen der vielen verschiedenen Dienste eher auswegslos.
Mein Ansatz ist bisher: Das eigentliche Bild wird sehr wahrscheinlich die größte Grafik auf der Seite sein. Also muss ich auf der Seite (wie dem oben verlinkten Beispiel) das img-Tag finden, das am größten angezeigt wird.
Es gibt PHP-Skripte für Zugriff auf das DOM einer Seite (PHP Simple HTML DOM Parser), sowie für die CSS-Deklarationen (CSS parser - PHP Classes) Diese beiden so zu kombinieren, dass auch verschachtelte Elemente etc. zuverlässig erkannt werden, sodass für jedes img-Tag die Größe ausgelesen werden kann, wird aber kompliziert.
Nach der langen Vorred also meine Fragen:
- kennt jemand eine Bibliothek, die HTML und CSS parsen kann und dann für jedes Element Zugriff auf die Formatierungen bietet?
- Oder gibt es vielleicht noch eine bessere Strategie, um mein Ziel zu erreichen, also das Bild auf so einer Seite zu erkennen?
Kommentar