Juli 27, 2008

ExtendTheFeed: Nachladen von Artikeln aus gekürzten Feeds

Wer gerne über neue Artikel informiert werden möchte, kann heutzutage auf vielen Seiten einen Newsfeed abonnieren. Bei vielen Seiten kann man dann den ganzen Artikel in seinem Newsreader lesen. Zum Beispiel der Feed dieser Seite enthält den ganzen Artikel, sodass man die Seite nur besuchen muss, wenn man einen älteren Artikel sucht, oder einen Eintrag kommentieren möchte.

Aber es gibt auch viele Seiten, bei denen im Feed nur die ersten paar Sätze des Artikels enthalten sind, sodass man die Seite besuchen muss um den Artikel komplett zu lesen. Doch dagegen gibt es eine Abhilfe: ExtendTheFeed.

Vorraussetzung ist ein Webserver mit PHP, der natürlich auch auf dem eigenem Computer laufen kann. Zur Installation entpackt man das Archiv, und entfernt in library/extend-the-feed.php die "#" Zeichen bei:

if($out->writerss($output)) { #header('Content-Type: text/xml; charset="'.$out->outputencoding.'"'); #header('Content-Length: '.strval(strlen($output))); #echo $output;
Danach kopiert man pro Feed den man nutzen möchte example.php einmal nach feedname.php, und stellt dann in der Datei die Parameter für den jeweiligen Feed ein:
  • ExtendTheFeed("...") Hier kommt die URL des Originalfeeds hin
  • $feed->setStartMatch('...'); Hier trägt man einen HTML-Quelltext ein, der kurz vor der Meldung auf der News-Seite kommt, z.B. <div class="meldung">.
  • $feed->setEndMatch('...') Das gleiche, nur hier soll das Ende der Nachricht erkannt werden.
  • $feed->setAddDescription(false); Entscheidet, ob die Kurzbeschreibung nocheinmal vor die lange Meldung gesetzt werden soll.
  • $feed->setExtendedFeedUrl("http://localhost/extendthefeed/example.php"); URL unter der die jeweilige Datei erreichbar sein wird.
Danach müssen die Ordner "rsscache" und "htmlcache" für das Script schreibbar gemacht werden. Die URL für den erweiteren Feed ist dann http://servername/extendthefeedordner/feedname.php

Wer seine Feeds lieber anonym liest, kann in library/magpierss/Snoopy.class.php Tor als Proxy einstellen, wenn Tor/Privoxy installiert sind:

  • var $proxy_host        =    "localhost"; // proxy host to use
  • var $proxy_port        =    "8118";       // proxy port to use
Weiterhin setzt extend-the-feed in library/extend-the-feed.php den User-Agent auf Firefox 1.0. Wer möchte, kann dies auf eine ehrliche Angabe (Newsreader/Version XY), auf einen verbreiteteren User-Agent als Firefox 1.0 oder vielleicht auch auf "Extend-the-Feed/0.1" ändern. Weiterhin kann man in den feedname.php-Dateien die Magpie User-Agent Angabe ändern:
  • define('MAGPIE_USER_AGENT', '...');

Kategorien: Software
Tagged: Tipps Feed Extend-the-Feed News Snippet extend Artikel nachladen Magpie Snoopy

0 Kommentare

Kommentare

Kommentar schreiben