RSS-Newsfeeds lesen mit Tcl, Snit und TDOM
Appetithäppchen
von Carsten Zerbst
Erschienen im Linux-Magazin
2005/01
Newsticker, Web-Blogs und andere Informationssysteme verwenden gerne das RSS-Format, um kurze Nachrichten in standardisierter Form an die Interessenten zu verteilen. Diese News-Schnipsel lassen sich bestens mit Tcl und der objektorientierten Erweiterung CZRSS verarbeiten.
Kleine orange Kästchen, die von den weißen Lettern XML oder RSS geziert werden, finden sich auf immer mehr Webseiten. Der Link dahinter führt zu einer Datei, die eine Zusammenfassung der jüngsten News enthält oder über Änderungen der Seite informiert. Mit Hilfe dieser Technik tauschen Portale untereinander Neuigkeiten aus, zum Beispiel zeigt Slashdot auch Freshmeat-Meldungen (Abbildung 1). Websites wie [rss-scout.de] oder [rss-verzeichnis.de] geben eine Übersicht über mehrere tausend Newsfeeds, von der Tagesschau bis zum örtlichen Turnverein. Ein RSS-Feed lässt sich sogar für fremde Sites nachrüsten - wie das geht, erklärt der "Perl-Snapshot" dieser Ausgabe.
RSS-Inhalte eignen sich bestens als Input für eigene Software. Ein Tcl-Programm kann die Informationen extrahieren und in die gewünschte Form wandeln oder in einer grafischen Oberfläche darstellen. Es gibt mehrere Tcl-Erweiterungen zum Lesen von RSS, sie basieren entweder auf einem XML-Parser oder sind wie das Redland-Framework[15] komplett in C geschrieben. Für diesen Artikel entstand ein weiteres Paket namens CZRSS[17] auf Basis von Jochen Loewers XML- Erweiterung TDOM[12], Code von Tcl-Guru David Gravereaux[16] und Objektorientierung mit Snit[9].
XML-Formatdschungel
Die Firma Userland verwendet seit 1997 einfache XML-Dateien für Nachrichtenzusammenfassungen[1]; ihren Standard nennt sie RSS (Rich Site Summary), Version 0.91. RSS-Files enthalten Informationen über eine Webseite: URL, Logo, Beschreibung sowie eine Reihe von Nachrichten. Jede einzelne Meldung besteht aus einem Titel, einer kurzen Beschreibung sowie einem Link auf die passende Webseite. Diese Dateien werden wie normales HTML vom Webserver verteilt. Der Mechanismus heißt irreführenderweise Newsfeed. Das suggeriert, dass die Dateien automatisch an interessierte Benutzer verteilt würden (Push-Technik). Der Client muss sie jedoch selbst abholen (Pull).
Die Weiterentwicklung des XML-Schemas wird von Userland kontrolliert. Deren Entscheidungen stießen aber nicht immer auf Zustimmung, ein unabhängiges Gremium definierte daher das RDF Site Summary[2] (Version 1.0). Userland ist inzwischen auch nicht untätig geblieben und stellte als Nachfolger von RSS 0.91 das Really Simple Syndication Scheme[3] vor (RSS 2.0). Um beliebige Newsfeeds zu lesen, muss ein Client daher mindestens diese drei XML-Schemata beherrschen. Neue Newsfeeds sollten RDF oder RSS 2.0 verwenden. Mit Atom[5] etabliert sich derzeit ein weiteres Schema für Zusammenfassungen, die Clients müssen daher künftig mit noch mehr Schemata umgehen.
Tcl-Hülle
Das neue RSS-Paket für Tcl soll all diese Details vor dem Programmierer verbergen und ihm die Informationen so bequem anbieten wie von Tk-Widgets gewohnt. Diese arbeiten objektorientiert:
% label .l -text "Hallo Welt"
% .l cget -text
Hallo Welt
Die bekannteste OO-Erweiterung ist sicherlich Incr Tcl, sie war Thema der ersten Folge der Federlesen-Reihe[8]. Incr Tcl bringt Tcl-Programmierern ein Objektmodell - wie von C++ oder Java bekannt - mit Vererbung, Zugriffsschutz und ähnlichen Mechanismen. Einen einfacheren Ansatz verfolgt Snit[9] von Will Duquette. Diese reine Tcl-Erweiterung ist inzwischen Bestandteil der Tcllib[10] und in aktuellen Linux-Systemen bereits enthalten (siehe auch Kasten "Das Neueste").

|
Abbildung 1: Die Newsseite Slashdot blendet auch Meldungen von Freshmeat ein (rechts). Das Portal holt diese Informationen im standardisierten RSS-Format von der Freshmeat-Seite.
|
| Whitepaper |
|
Usage Landscape Enterprise Open Source Data Integration
Die Nachfrage nach Datenintegrationslösungen für Unternehmen ist zunehmend gestiegen und vor allem das Interesse an Open Source Technologien wird immer größer. Doch wie und von wem werden Open Source Datenintegrationslösungen genutzt und welches Nutzungsverhalten lässt sich daraus ableiten? Das vorliegende White Paper präsentiert die Erfahrungswerte von über 1000 Open Source Nutzern und liefert fundierte Antworten auf diese Fragen.
Download PDF (Registrierung erforderlich)
|
|
Daten Migration - Eine Publikation von Bloor Research
Datenmigrationsprojekte überschreiten häufig das Budget, neigen zu Verzögerung und werden unter Umständen komplett abgebrochen. Bloor Research ist eines der weltweit führenden IT-Forschungs-, Analyse- und Beratungsunternehmen und wird in dem vorliegenden White Paper die wichtigsten Aspekte dieser Problematik näher beleuchten. Ferner werden praktische Empfehlungen für erfolgreiche Migrationsprojekte gegeben, die Sie auf Ihr nächstes Projekt übertragen können.
Download PDF (Registrierung erforderlich)
|
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links"
nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedrucken Fassung entsprechen.
|