{"id":10873,"date":"2015-11-05T02:59:42","date_gmt":"2015-11-05T01:59:42","guid":{"rendered":"https:\/\/tuxproject.de\/blog\/?p=10873"},"modified":"2019-03-25T00:14:04","modified_gmt":"2019-03-24T23:14:04","slug":"mit-feed43-gegen-webmuell","status":"publish","type":"post","link":"https:\/\/tuxproject.de\/blog\/2015\/11\/mit-feed43-gegen-webmuell\/","title":{"rendered":"Mit feed43 gegen Webm\u00fcll"},"content":{"rendered":"<p><em>(Vorbe\u00admerkung: Es fol\u00adgt nach l\u00e4n\u00adger\u00ader Zeit ein weit\u00ader\u00ader lang\u00adweiliger Text \u00fcber Com\u00adput\u00aderkram, der eigentlich nur den Zweck erf\u00fcllt, die \u00fcber\u00adf\u00e4l\u00adlige Musikr\u00fcckschau zu prokras\u00adtinieren. Wie \u00e4rg\u00ader\u00adlich.)<\/em><\/p>\n<p>Vor eini\u00adgen Jahren <a href=\"https:\/\/tuxproject.de\/blog\/2011\/01\/rss-ist-tot-ist-tot\/\">hoffte ich<\/a>, dass die Mut\u00adma\u00dfung, das RSS-For\u00admat sei nicht mehr zeit\u00adgem\u00e4\u00df, bis auf Weit\u00aderes nicht zutr\u00ade\u00adf\u00adfen w\u00fcrde. Ich beginne zu f\u00fcrcht\u00aden, dass ich da vielle\u00adicht zu opti\u00admistisch war.<\/p>\n<p>Denn: <a href=\"http:\/\/developer.telerik.com\/featured\/the-webs-cruft-problem\/\">Web\u00adm\u00fcll ver\u00adstopft das Netz.<\/a> Man ruft Web\u00adsites auf und bekommt eine Menge zu sehen, nur der eigentliche Inhalt wird immer bess\u00ader ver\u00adsteckt. Hier, eine Wer\u00adbe\u00adfl\u00e4che! Hier, 34 weit\u00adere Schlagzeilen zu ganz anderen The\u00admen! Abon\u00adnier\u2019 uns doch! Und guck\u2019 mal, wie sch\u00f6n unsere <em>sozialen wid\u00adgets<\/em> leucht\u00aden! \u2014 Das Web als Infor\u00adma\u00adtion\u00ads\u00admedi\u00adum ver\u00adsagt, weil seine Gestal\u00adter ver\u00adsagen.<\/p>\n<p>Selb\u00adst, wenn man sich von wer\u00adbe\u00adtr\u00e4chti\u00adgen Quatsch\u00adseit\u00aden wie <em>taz.de<\/em> und \u201cSPIEGEL ONLINE\u201d fern\u00adh\u00e4lt, wird es zuse\u00adhends schwieriger, sich effizient zu informieren, weil RSS als ein\u00adheitlich\u00ader Stan\u00addard sich trotz\u00addem nicht so recht durchzuset\u00adzen ver\u00admag.<\/p>\n<p><!--more-->Ein Beispiel ist <a href=\"http:\/\/www.9bis.net\/kitty\/\">KiT\u00adTY<\/a>. KiT\u00adTY ist eine Vari\u00adante des Win\u00addows-Ter\u00admi\u00adnal-Emu\u00adla\u00adtors <a href=\"http:\/\/www.chiark.greenend.org.uk\/~sgtatham\/putty\/\">PuT\u00adTY<\/a>, die ver\u00adschiedene Verbesserun\u00adgen bein\u00adhal\u00adtet. M\u00f6chte man \u00fcber die Ver\u00f6f\u00adfentlichung ein\u00ader neuen KiT\u00adTY-Ver\u00adsion allerd\u00adings informiert wer\u00adden, so muss man entwed\u00ader KiT\u00adTY starten und dort auf die entsprechende Schalt\u00adfl\u00e4che klick\u00aden, um auf eine Web\u00adsite (!) weit\u00adergeleit\u00adet zu wer\u00adden, die bei Ver\u00adf\u00fcg\u00adbarkeit ein\u00ader neuen Ver\u00adsion wiederum auf die Start\u00adseite (!) von KiT\u00adTY umleit\u00adet, von der aus man dann den entsprechen\u00adden Down\u00adload suchen muss, oder die Web\u00adsite besuchen, auf der ganz unten etwas von ein\u00ader <em>neuen Ver\u00adsion<\/em> zu lesen ist. Zwar gibt es auf der KiT\u00adTY-Web\u00adsite auch einen RSS-Feed, aber der informiert <a href=\"http:\/\/www.9bis.net\/kitty\/data\/rss\/rssen.xml\">nicht \u00fcber neue Ver\u00adsio\u00adnen<\/a>.<\/p>\n<p>Einige Pro\u00adjek\u00adte bieten auch selb\u00adst eigentlich kor\u00adrek\u00adte RSS-Feeds an, die aber defekt sind, zum Beispiel <a href=\"http:\/\/www.xrecode.com\/rss\/rss.xml\">xre\u00adcode II<\/a> \u2014 auf\u00adgrund ein\u00ader fehler\u00adhaften Datums\u00adfor\u00admatierung kann man diesen Feed zwar abon\u00adnieren, aber bere\u00adits gele\u00adsene Ein\u00adtr\u00e4ge wer\u00adden von den meis\u00adten Feedle\u00adsern immer wieder als neu erkan\u00adnt. Nehmen wir ein\u00admal an, ihr set\u00adzt mehr als nur eine Soft\u00adware ein, so habt ihr in der Regel einen ziem\u00adlichen Aufwand zu betreiben, um allen Entwick\u00adlun\u00adgen zu fol\u00adgen.<\/p>\n<p>Hier kann m\u00f6glicher\u00adweise das englis\u00adchsprachige <a href=\"http:\/\/feed43.com\">feed43<\/a> Abhil\u00adfe schaf\u00adfen, ein Dienst, der ver\u00adspricht, jede Web\u00adsite in einen RSS-Feed ver\u00adwan\u00addeln zu k\u00f6n\u00adnen, zum Beispiel auch die <a href=\"http:\/\/www.xrecode.com\/whatsnew.htm\">\u00c4nderungs\u00adseite<\/a> von xre\u00adcode II.<\/p>\n<p>Daf\u00fcr muss nach der Reg\u00adistrierung (die auch aus anderen Gr\u00fcn\u00adden empfehlenswert ist) zun\u00e4chst ein\u00admal ein neuer Feed erstellt wer\u00adden. Als zu <em>scan\u00adnende<\/em> Web\u00adsite sollte <tt>http:\/\/www.xrecode.com\/whatsnew.htm<\/tt> einge\u00adtra\u00adgen wer\u00adden:<\/p>\n<p><a href=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/Source-address.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/Source-address-300x65.png\" alt=\"Source address\" width=\"300\" height=\"65\" class=\"alignnone size-medium wp-image-10875\" srcset=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/Source-address-300x65.png 300w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/Source-address-120x26.png 120w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/Source-address.png 684w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\"><\/a><\/p>\n<p>Ein Klick auf \u201cReload\u201d ver\u00adsucht die Seite aufzu\u00adrufen und ihren Quell\u00adtext darzustellen, aus dem das Muster extrahiert wer\u00adden kann, das dann sp\u00e4ter die Grund\u00adlage f\u00fcr den RSS-Feed bildet. Zun\u00e4chst ist ein \u201cglob\u00adales Muster\u201d festzule\u00adgen, das beschreibt, in welchem Teil der Seite sich die einzel\u00adnen Ein\u00adtr\u00e4ge befind\u00aden, die wiederum das \u201cwieder\u00adholte Muster\u201d darstellen. <tt>{%}<\/tt> ste\u00adht hier\u00adbei f\u00fcr einen beliebig lan\u00adgen Text, <tt>{|}<\/tt> f\u00fcr einen Zeilenum\u00adbruch.<\/p>\n<p>Da die Ver\u00adsion\u00adsliste auf der Seite mit dem ersten schlie\u00dfen\u00adden <tt>&lt;\/div&gt;<\/tt> begin\u00adnt, kann unsere \u201cglob\u00adale Suche\u201d (erstes Feld) schlicht so ausse\u00adhen:<\/p>\n<pre>&lt;\/div&gt;\n{%}<\/pre>\n<p>Einzelne Ver\u00adsion\u00adsein\u00adtr\u00e4ge sind bis\u00adlang immer so aufge\u00adbaut:<\/p>\n<pre>01.01.2015&lt;\/br&gt;\n&lt;\/br&gt;\n  - version 1.0.0.001&lt;\/br&gt;\n  - FIX: irgendwas.&lt;\/br&gt;\n  - FIX: noch etwas.&lt;\/br&gt;\n  &lt;\/br&gt;<\/pre>\n<p>Das Datum brauchen wir nicht (das ste\u00adht dann sp\u00e4ter sowieso automa\u00adtisch im Feedein\u00adtrag), wir brauchen jedoch die Ver\u00adsion\u00adsnum\u00admer und die Ein\u00adtr\u00e4ge darunter.<\/p>\n<p>Unser \u201cSuch\u00adcode\u201d (zweites Feld) sieht also so aus:<\/p>\n<pre>- version {%}&lt;\/br&gt;{|}{%}&lt;\/br&gt;{|}&lt;\/br&gt;<\/pre>\n<p>Hier wer\u00adden zwei Platzhal\u00adter geset\u00adzt: Der erste Platzhal\u00adter ist die Ver\u00adsion\u00adsnum\u00admer (sie geht bis zum ersten <tt>&lt;\/br&gt;<\/tt>), der zweite sind die \u00c4nderun\u00adgen (sie enden mit den bei\u00adden schlie\u00dfen\u00adden <tt>&lt;\/br&gt;<\/tt>). Diese hei\u00dfen sp\u00e4ter <tt>{%1}<\/tt> und <tt>{%2}<\/tt>.<\/p>\n<p>Hat alles geklappt, bleibt als let\u00adzter Schritt noch der eigentliche Feed einzustellen. Titel und Beschrei\u00adbung sind egal, die tauchen dann sp\u00e4ter nur in eurem Feedleser auf, nur die bei\u00adden <em>tem\u00adplates<\/em> f\u00fcr \u00dcber\u00adschrift und Inhalt der einzel\u00adnen Feedein\u00adtr\u00e4ge soll\u00adten stim\u00admen. Im vor\u00adliegen\u00adden Fall sind das ein\u00adfach <tt>{%1}<\/tt> und <tt>{%2}<\/tt>, eigene Links f\u00fcr neue Ver\u00adsio\u00adnen gibt es nicht.<\/p>\n<p><a href=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/RSS-Feed-Properties.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/RSS-Feed-Properties-295x300.png\" alt=\"RSS Feed Properties\" width=\"295\" height=\"300\" class=\"alignnone size-medium wp-image-10876\" srcset=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/RSS-Feed-Properties-295x300.png 295w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/RSS-Feed-Properties-118x120.png 118w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/RSS-Feed-Properties.png 672w\" sizes=\"auto, (max-width: 295px) 100vw, 295px\"><\/a><\/p>\n<p>Ein Klick auf \u201cPre\u00adview\u201d \u2014 hat alles geklappt, so sollte im Vorschaufen\u00adster euer Feed erscheinen. Anson\u00adsten kann noch etwas nach\u00adbear\u00adbeit\u00adet wer\u00adden.<\/p>\n<p>Unter dem Vorschaufen\u00adster sind zwei Links zu sehen, der zweite ist \u00fcber\u00adfl\u00fcs\u00adsig, wenn ihr euch auf feed43 angemeldet habt (dann k\u00f6n\u00adnt ihr eure Feeds in euren Kon\u00adtoe\u00adin\u00adstel\u00adlun\u00adgen bear\u00adbeit\u00aden). Der erste Link hinge\u00adgen, als \u201cFeed URL\u201d (also Feedadresse) beze\u00adich\u00adnet, ist der Link, den ihr eurem RSS-Leser (zum Beispiel <a href=\"http:\/\/rosaelefanten.org\/rss\">Tiny Tiny RSS<\/a>) hinzuf\u00fc\u00adgen k\u00f6n\u00adnt. Das sieht dann zum Beispiel so aus:<\/p>\n<p><a href=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/TTRSS.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/TTRSS-300x176.png\" alt=\"TTRSS\" width=\"300\" height=\"176\" class=\"alignnone size-medium wp-image-10877\" srcset=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/TTRSS-300x176.png 300w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/TTRSS-120x70.png 120w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2015\/11\/TTRSS.png 834w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\"><\/a><\/p>\n<p>Das funk\u00adtion\u00adiert prinzip\u00adiell f\u00fcr eigentlich jede halb\u00adwegs sauber struk\u00adturi\u00aderte Web\u00adsite, die selb\u00adst keinen Feed anbi\u00adetet; ich selb\u00adst nutze den Dienst zum Beispiel, um <a href=\"https:\/\/tuxproject.de\/projects\/vim\">meine Vim-Builds<\/a> anzuk\u00fcndi\u00adgen.<\/p>\n<p>W\u00e4hrend mein\u00ader Tests hat sich feed43 \u00fcbri\u00adgens ein paar\u00admal an ein\u00ader der getesteten Web\u00adsites ver\u00adschluckt, manch\u00admal muss man den Feed <em>anschieben<\/em> (ein\u00adfach noch ein\u00admal spe\u00adich\u00adern). Bei einem kosten\u00adlosen Dienst ist das aber, nehme ich an, verzeih\u00adlich.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(Vorbe\u00admerkung: Es fol\u00adgt nach l\u00e4n\u00adger\u00ader Zeit ein weit\u00ader\u00ader lang\u00adweiliger Text \u00fcber Com\u00adput\u00aderkram, der eigentlich nur den Zweck erf\u00fcllt, die \u00fcber\u00adf\u00e4l\u00adlige Musikr\u00fcckschau zu prokras\u00adtinieren. Wie \u00e4rg\u00ader\u00adlich.) Vor eini\u00adgen Jahren hoffte ich, dass die Mut\u00adma\u00dfung, das RSS-For\u00ad\u00admat sei nicht mehr zeit\u00adgem\u00e4\u00df, bis auf Weit\u00aderes nicht zutr\u00ade\u00adf\u00adfen w\u00fcrde. Ich beginne zu f\u00fcrcht\u00aden, dass ich da vielle\u00adicht zu opti\u00admistisch \u2026<\/p>\n<p><a href=\"https:\/\/tuxproject.de\/blog\/2015\/11\/mit-feed43-gegen-webmuell\/\" class=\"more-link\">\u2018Mit feed43 gegen Web\u00adm\u00fcll\u2019 weit\u00ader\u00adlesen \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"wp_typography_post_enhancements_disabled":false,"footnotes":""},"categories":[19],"tags":[],"series":[],"class_list":["post-10873","post","type-post","status-publish","format-standard","hentry","category-nerdkrams"],"share_on_mastodon":{"url":"","error":""},"wp-worthy-pixel":{"ignored":false,"public":null,"server":null,"url":null},"wp-worthy-type":"normal","_links":{"self":[{"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/posts\/10873","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/comments?post=10873"}],"version-history":[{"count":0,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/posts\/10873\/revisions"}],"wp:attachment":[{"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/media?parent=10873"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/categories?post=10873"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/tags?post=10873"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/series?post=10873"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}