Mach’s dir selbst!

Mach's dir selbst!

Sommer, Sonne, Apfelcomputer! Programmieren bei über 20 Grad im Schatten.

Es ist Frühling, ein freier Tag im Mai, richtig schönes Wetter, und es gibt nichts zu tun. Kein schöner Tag um ihn vor den Computer zu verbringen, besonders nicht bei der extremen Hitzeentwicklung in meinem Arbeitszimmer. Immerhin erlitt meine Xbox360 in diesen Räumlichkeiten schon zweimal den Hitzetod. Trotzdem gebe ich mich der Faulheit nicht hin, ich habe ein Ziel vor Augen dass umgesetzt werden muss.

Meine selbst aufgelegte Aufgabe besteht in einem WebScript das verschiedene RSS-Feeds mehrere Blogs einließt, in eine DB ablegt, nach Zeit sortiert und in Form einer Tabelle wieder ausgibt.

Zum ersten mal kam ich im gamesTM Forum auf die Idee eines solchen Scripts. Forenmeister Sayler witzelte dass man einen games-tm Blogclub gründen könne da inzwischen so viele Mitglieder einen Blog nebenher führen. Tatsächlich ist die Dichte talentierter Blogschreiber ist in diesem Forum erstaunlich hoch. Da ich seit dem Umstieg von Windows auf Mac keinen vernünftigen RSS-Reader gefunden habe, und allein aus Zeitmangel nicht jeden Blog einzeln abklappern kann, war die Idee aus diesem Forenbeitrag geboren worden. Ich wollte eine übersichtliche Seite gefüllt mit allen Blogs die mich interessieren.

Bestimmt gibt es in den Weiten des Internet schon einige Anwendungstools die genau diesen Zweck erfüllen. Doch dann wäre ich nicht Herr über das Layout und könnte meine Liste nicht jedermann präsentieren, zudem so ein Script dann allerhand RSS-Feeds einlesen kann. Es gibt praktisch keine Grenzen.

Für die Umsetzung einer Idee sollten als erster gewisse Vorbereitungen getroffen werden, wie…
…eine Laufzeitumgebung zum testen muss vorhanden sein
…Grundkenntnisse bei der Programmierung werden benötigt
…viel Freizeit oder zumindest ein freier Tag sollte man sich nehmen

Da Grundkenntnisse und Laufzeitumgebung kein Problem darstellen, fehlte eigentlich nur noch ein freier Tag. Heute ist Fronleichnam, Jackpot!

Schon machte ich mich an die Arbeit. Als erstes musste PHPlib eingerichtet werden, auf dass ich während meines Praktikum gestoßen bin. Die Interaktion zwischen MySQL-Datenbank und PHP wird dadurch zum Kinderspiel. Außerdem wird das eigentliche Script dadurch um einige Zeilen gestrafft was eine bessere Übersicht schafft.

Anschließend fing die eigentliche Arbeit an. Zuerst speicherte ich die Feeds in einem Array und ließ dieses mit einer Schleife bis zum Ende durchlaufen. Oder einfach ausgedrückt, mein Script wiederholte einen Arbeitsvorgang mehrere male mit unterschiedlichen RSS-Feeds, bis keine mehr übrig ist. Über die Funktion fopen wurden die Feeds “geöffnet” und jede Zeile einzeln “gelesen”. Sobald ein gesuchter Wert gefunden wurde, speicherte das Script diesen in ein Array. So hatte ich am Ende ein großes dreidimensionales Array, vergleichbar mit einer Tabelle, welches Zeit, Titel und Link zu jedem Feedeintrag speicherte. In grafischer Darstellung sieht das Array dann so wie hier aus.

Zu guter letzt mussten die Feeds im Array nur noch sortiert und ausgegeben werden. Bei einer größeren Anzahl von Blogs braucht das Script nun allerdings deutlich längere Ladezeiten als vorher. Aus dem Grund entschloss ich mich für die Datenbankanbindung und speicherte jeden Feedeintrag in eine DB - unsichtbar für den User. Jetzt war es kein Problem mehr die Anzahl der Blogeinträge in der Liste nach Blog, Zeit oder Titel zu sortieren. Es war auch möglich die Anzahl der Beiträge für jeden Blog einzeln zu bestimmen. Ein erstes Zwischenergebnis sieht man hier.

Der Löwenanteil ist nun fertig, mein Script umfasst etwa 200 Zeilen Code und bedarf noch einiger Optimierung. Des weiteren muss noch eine Ausgabe der Datenbankeinträge geschrieben werden. Im Vergleich zum einlesen und speichern der Feeds bedarf dies aber nicht meinen vollen Einsatz. Es wird demnach nicht mehr lange dauern bis ich mein kleines aber feines Clubscript fertig habe.

Wer beim lesen bis zu dieser Stelle noch nicht eingeschlafen ist, dem gratuliere ich herzlich und biete ihm oder ihr die Gelegenheit jede einzelne Zeile meines Scripts von mir erklärt zu bekommen. Ha! Eine Runde Tetris 1D gibt es obendrauf.

Verfasst am 22.05.08, um 18:31 Uhr, von rotfuchs
Kategorie(n): Netzkultur, Seiten/Blogs, Technik
Unter den Tags: , , ,

Meinungen

Hier findest du den RSS-Feed aller bisher geschriebenen Kommentare zu diesem Beitrag, sowie die TrackBack URL zum verknüpfen zweier Blogeinträge, und nun ist deine Meinung gefragt.

Fisher

Schöne Idee. Viel Glück für deine restlichen Arbeiten.

Am 22.05.08 um 21:15 Uhr #19

rotfuchs

Irgendwann am Wochenende sollte ich mit dem Script fertig werden. Danach präsentiere ich es im gamesTM Forum und hoffe auf ein positives Feedback. Andernfalls gibt es sicherlich noch andere lohnenswerte Anwendungsmöglichkeiten.

Am 23.05.08 um 18:38 Uhr #20

Was ist deine Meinung?

Name

E-Mail

URL