2 Punkte von GN⁺ 2023-12-12 | 2 Kommentare | Auf WhatsApp teilen
  • Viele Websites bieten RSS-Feeds an, lassen aber RSS-/Subscribe-Links oder Metadaten für die automatische Erkennung weg, sodass Nutzer die Feed-Adresse nur schwer finden können
  • Wenn auf der Seite ein RSS-Link direkt sichtbar ist, informiert das Besucher unabhängig von der automatischen Erkennung durch Feed-Reader über die Existenz von RSS und verbessert so die Zugänglichkeit des offenen Webs
  • Die automatische RSS-Erkennung ist das Standardverfahren, bei dem im HTML-<link>-Tag nach type="application/rss+xml" gesucht wird; Feed-Reader wie NetNewsWire können dies beim Eingeben einer URL nutzen
  • Wenn man im head der Website ein <link>-Tag mit rel="alternate", type, title und href einfügt, lässt sich der RSS-Feed explizit sichtbar machen
  • Wenn es mehrere Feeds gibt, etwa RSS, Atom, JSON Feed oder einen Podcast-Feed, kann man mehrere <link>-Tags verwenden, und ein RSS-Button sollte auch wie ein RSS-Button aussehen

RSS-Links und automatische Erkennung zusammen anbieten

  • Wenn Nutzer nach einem RSS-Feed suchen, prüfen sie zuerst auf einen RSS-/Subscribe-Link innerhalb der Website, aber viele Websites haben keinen solchen Link
  • Manche Nutzer fügen in ihren Feed-Reader nur die URL einer Website ein und lassen die App den Feed finden, aber wenn auf der Seite ein RSS-Link sichtbar ist, erkennen Besucher sofort, ob RSS unterstützt wird
  • Die automatische RSS-Erkennung funktioniert, indem unter den <link>-Tags einer Website nach Einträgen gesucht wird, deren type application/rss+xml ist
return Array.from(document.getElementsByTagName('link')).find(l => l.type.includes('application/rss+xml'))?.href
  • Dieses Verfahren ist ein Standard namens RSS auto-discovery, der Browsern und anderer Software hilft, den RSS-Feed einer Website automatisch zu finden
  • Feed-Reader wie NetNewsWire können beim Einfügen einer URL solche Metadaten verwenden, um den Feed zu finden

Feed-Metadaten im head

  • Wenn es einen RSS-Feed gibt, kann man im head der Website ein Auto-Discovery-Tag wie das folgende einfügen
<link rel="alternate" type="application/rss+xml" title="My Cool Website" href="https://example.com/feed.xml"; />
  • Für Atom-Feeds wird bei type application/atom+xml verwendet
<link rel="alternate" type="application/atom+xml" title="My Cool Website" href="https://example.com/atom.xml"; />
  • Wenn es mehrere Feeds gibt, kann man auch mehrere <link>-Tags einsetzen
    • RSS-Feed der Website
    • JSON Feed
    • Podcast-Feed
<!-- Website RSS feed -->
<link rel="alternate" type="application/rss+xml" title="My Cool Website" href="https://example.com/feed.xml"; />

<!-- Website JSON feed -->
<link rel="alternate" type="application/json" title="My Cool Website but JSON" href="https://example.com/feed.json"; />

<!-- Podcast RSS feed -->
<link rel="alternate" type="application/rss+xml" title="My Cool Podcast" href="https://example.com/podcast.xml"; />
  • Mit einem Update vom 9. Dezember 2023 kam zusätzlich der Vorschlag hinzu, dass ein RSS-Button beim Hinzufügen auch wie ein RSS-Button aussehen und das typische RSS-Orange verwenden sollte

2 Kommentare

 
ndrgrd 2023-12-14

Es gibt viele Websites, die ihre Feeds gut verstecken. Wenn ich sie wirklich abonnieren möchte, probiere ich oft direkt /rss, /rss.xml, /index.xml, /feed oder /feed.xml aus.

 
GN⁺ 2023-12-12
Meinungen auf Hacker News
  • Tipp: Auch YouTube-Kanäle stellen RSS-Feeds bereit, daher kann man sie abonnieren, indem man einfach die Kanal-URL in den Newsreader einfügt.
    RSS-Feeds kann es auch an unerwarteten Stellen geben; sinnvoll ist daher eine Erweiterung, die im Browser den Button „Per RSS abonnieren“ zurückbringt.
    <https://addons.mozilla.org/en-US/firefox/addon/awesome-rss/>
    <https://chromewebstore.google.com/detail/rss-subscription-ex...>

  • Der Hauptgrund, warum viele RSS-/Atom-Feeds nicht sichtbar sind, sind zwei Dinge: Dienste wie Google Reader sind verschwunden, und Browser haben die native RSS-Unterstützung einschließlich Feed-Erkennung eingestellt.
    Wenn man die Funktion zurückbringt, die ursprünglich im Browser vorhanden sein sollte, kann man sie zumindest zum Auffinden von Feeds nutzen und sie danach mit Tools wie newsbeuter abonnieren.

    • Das war Absicht. Denn RSS ist eine Möglichkeit, Werbung zu umgehen.
      Man muss nur daran denken, wer heute den am weitesten verbreiteten Browser herstellt.
    • Nur weil einige Unternehmensdienste verschwunden sind, heißt das nicht, dass man keinen "application/rss+xml"-Link in den HTML-Quelltext setzen kann.
      Im Gegenteil: Es kann durchaus beliebig viele „nicht zurückziehbare“ Desktop-Apps wie RSS-Reader geben. Es ist eher seltsam, von einem Dienst abhängig zu sein, der verschwinden kann; RSS-Reader gibt es noch viele, und einen zu bauen ist ziemlich einfach.
      Um Feeds zu finden, kann man den HTML-Quelltext prüfen. Das Problem ist, wenn ein Feed existiert, aber nirgends auf der Website angezeigt wird.
    • Ich habe einmal festgestellt, dass der RSS-Button auf meiner Website nicht sichtbar war. Ich wusste zunächst nicht warum, bis ich den Adblocker überprüft habe.
      Mindestens zwei Listen, AdGuard Widgets und EasyList Social Widgets, enthalten noch Regeln, die RSS-Icons blockieren. Allerdings sind sie standardmäßig nicht aktiviert.
    • Native RSS-Unterstützung als Kernfunktion des Browsers einzubauen, war von Anfang an nicht besonders sinnvoll; Erweiterungen passen dafür viel besser.
      Es gibt auch viele Dienste, die Google Reader ersetzen können, und sie bieten Funktionen über einfaches RSS hinaus.
      In Medien, die auf Engagement und Sucht optimiert sind, ist RSS ein Sprungbrett aus der Plattform heraus, also wird es natürlich nicht genutzt. Selbst persönliche Blogs, um die es im Artikel hauptsächlich geht, möchten Leser für Klicks möglicherweise auf der eigenen Website halten.
      Das ist ein Interessenkonflikt zwischen Content-Anbietern und Konsumenten, im Wesentlichen ein Werbeproblem, kein Implementierungsproblem.
  • Ich fände es gut, wenn auch Website-Betreiber sehen könnten, dass jemand einen Blog-Feed abonniert hat.
    Wenn ich einen guten Artikel lese, schicke ich dem Betreiber manchmal eine lobende E-Mail oder hinterlasse kurz einen Kommentar auf HN, um mitzuteilen, dass ich den Feed abonniert habe. Ich hoffe, dass das Menschen, die mit Mühe und Liebe gute Inhalte erstellen, ermutigt, weiterzumachen.
    Wer sich für meinen selbstgebauten RSS-Reader interessiert, kann sich https://www.heyhomepage.com ansehen; an angeklickte Links hänge ich Parameter wie /?rss_ref=heyhomepage.com an. Der Website-Betreiber bekommt meinen Traffic und kann, falls er Besucherstatistiken ansieht, leicht erkennen, woher ich komme.

  • RSS ist auch etwas uneinheitlich. Manche Leute packen Inhalte in den Feed, andere nur Links.
    Wenn nur Links vorhanden sind, braucht man normalerweise sitespezifischen Spezialcode, um die Inhalte programmatisch auszulesen. Es gibt zwar auch generische Scraper, aber man muss damit leben können, dass beliebiges Rauschen wie Website-Header in die Daten gerät.
    Durch das Aufkommen von LLMs könnte dafür endlich ein Markt entstehen. Leute könnten Daten wie Artikel als Datenquelle für Machine-Learning-Pipelines verkaufen, und das könnte auch ein Weg weg von Werbung sein.
    Deshalb würde ich gern damit anfangen, RSS besser zu machen. Es ist wie ein Leuchtturm in einem dunklen Meer.

    • Ich glaube nicht, dass RSS für Scraper „verbessert“ werden muss.
    • NewsBlur hat einen Schalter, mit dem man zwischen Feed-Ansicht und Textansicht wählen kann.
      Die Textansicht kann meistens den vollständigen Artikel von der Website holen, selbst wenn der Feed nur eine Zusammenfassung enthält.
    • Heißt das, RSS soll Urheberrechtswäsche besser ermöglichen?
    • Rund um diese Idee habe ich einen etwas meinungsstarken RSS-Reader/Tracker gebaut, der nur mit Links arbeitet.
      So bekommt man ein konsistentes Erlebnis, und die Autoren erhalten trotzdem Besuche auf ihrer Website.
      Man kann ihn hier ausprobieren: https://lenns.io. Über Feedback würde ich mich freuen.
    • Wegen des Punkts „Manche Leute packen Inhalte in den Feed, andere nur Links“ habe ich aufgehört, RSS zu nutzen.
      Wenn ich ohnehin Links folgen muss, gehe ich lieber direkt zu den Websites, die ich lesen möchte, um Zeit zu sparen.
  • Einer der altmodischen Gründe, warum manche Leute RSS nicht öffentlich machen wollen, ist der Wunsch, ungefähr zu wissen, wie viele Abonnenten sie haben. Mir ist kürzlich aufgefallen, dass viele große RSS-Reader Analysezahlen auf oberer Ebene veröffentlichen.
    Auch damit lässt sich die Zahl der RSS-Leser schätzen. Es wäre schön, wenn mehr Reader diese Funktion unterstützen würden. Wenn ich mir alle RSS-Feeds ansehe, die ich in meinem Produkt veröffentliche, scheinen Clients wie NewsBlur, Feedly, Feedbin und Inoreader dieses Pseudo-Protokoll zu unterstützen.
    Darauf gestoßen bin ich dank des Artikels von Darek Kay: https://darekkay.com/blog/rss-subscriber-count/

    • Dass große RSS-Reader die Zahl der Abonnenten offenlegen, ist eine nette Zusatzfunktion, hat aber auch einen leichten Effekt in Richtung Zentralisierung.
      Ich versuche, Website-Betreibern mitzuteilen, dass ich ihren Feed abonniert habe, indem ich einen URL-Parameter wie /?rss_ref=heyhomepage.com anhänge. Betreiber sehen diesen RSS-Referrer in ihren Besucherstatistiken vielleicht, vielleicht aber auch nicht.
      Ich konsumiere den ganzen Artikel nicht nur im Reader, sondern lasse mir eine kurze Zusammenfassung anzeigen und klicke dann auf den Link zum Artikel. So kann ich ihre persönliche Website genießen, und die Betreiber sehen meinen Traffic deutlicher.
    • Das ist auch bei Podcast-Clients, die serverseitig crawlen, eine gängige Methode; im Grunde machen es die meisten so.
    • Die einfachste Lösung ist, schlicht die Server-Requests zu prüfen.
      Mein Reader ist terminalbasiert, daher würde die Unterstützung von JavaScript-Analytics am eigentlichen Zweck vorbeigehen.
  • Weil Auto-Discovery auf vielen Websites kaputt ist oder fehlt, probiert mein Feed-Reader Temboz solche Suffixe aus, in der Hoffnung, irgendwo einen RSS- oder Atom-Feed zu finden:
    'feed', 'feed/', 'rss', 'atom', 'feed.xml', '/feed', '/feed/', '/rss', '/atom', '/feed.xml', 'index.atom', 'index.rss', 'index.xml', 'atom.xml', 'rss.xml', '/index.atom', '/index.rss', '/index.xml', '/atom.xml', '/rss.xml', '.rss', '/.rss', '?rss=1', '?feed=rss2'

  • Vor einiger Zeit habe ich https://hn-blogs.kronis.dev gebaut, basierend auf RSS-/Atom-Feeds, die Leute auf HN geteilt hatten. Es läuft immer noch im Hintergrund und holt täglich die neuesten Beiträge ab.
    Auf der Website gibt es Links zum ursprünglichen HN-Beitrag und zu meinem Blogpost; der Blogpost ist hier: https://blog.kronis.dev/articles/ever-wanted-to-read-thousan...
    Es war eine ziemlich interessante Arbeit, und ich finde es gut, dass diese Technik existiert, aber die Integration unterscheidet sich von Person zu Person stark. Manchmal wird der Feed-Typ falsch gemeldet, manchmal bekommt man nicht alle gewünschten Feed- oder Item-Metadaten, es gibt Netzwerkfehler, oder XML-Parsing bricht wegen Steuersequenzen im Text.
    Je größer der Datensatz wird, desto überzeugter bin ich, dass die Zahl möglicher Probleme wächst. Wenn irgendein Fehler auftreten kann, muss man ihn am Ende auch behandeln.

  • Dieser Artikel schien auf mich gemünzt zu sein, also habe ich im Footer meiner Seite ein RSS-Icon hinzugefügt.
    https://github.com/gavinanderegg/gavinanderegg.github.io/com...
    Ich dachte, ein Link mit "application/rss+xml" reiche aus, aber ich verstehe, dass Leute heute nicht mehr davon ausgehen, dass jede Website so einen Link hat. Als jemand, der Blogposts hauptsächlich per RSS liest, finde ich es sehr gut, das expliziter zu machen.
    [1] https://mastodon.social/@gavinanderegg/111362850402497489

    • Meine Seite hat den RSS-Feed ebenfalls nicht gut sichtbar gemacht. Da ich in HTML nicht besonders stark bin, habe ich mir angesehen, wie du es auf deiner Website gemacht hast, und es für meine angepasst.
      Jetzt haben wir beide RSS sichtbar gemacht.
  • Ich nutze miniflux, und wenn ich beim Suchen nach einem Feed einfach die Domain eingebe, findet es in drei von vier Fällen irgendwo etwas wie /rss oder feed.
    Es wäre schön, wenn das explizit sichtbar wäre. Vielleicht ist es in Frameworks eingebaut und kommt gratis mit, sodass man sich nicht die Mühe macht, es offenzulegen; das könnte aber auch naiv gedacht sein.

  • Dass RSS unterdrückt wurde, macht mich jedes Mal wütend, wenn ich daran denke.

    • Von wem unterdrückt? Google mag seinen eigenen News Reader eingestellt haben, aber RSS hängt nicht von Google ab und ist daher nie stehen geblieben.
      Ich finde es großartig, dass Wordpress automatisch jeder Website im Internet einen Feed verpasst.
      Für mich ist das ein Filter. Dummer Clickbait-Content wandert woandershin, und hochwertige Inhalte, für die die Ersteller selbst Verantwortung tragen, landen sauber in meinem Feed-Reader. Für mich ist das fast ein Segen im Verborgenen.
      Natürlich braucht es zusätzliche Mühe, eine gute Sammlung von Feeds zu pflegen. Aber ist das nicht bei allen guten Dingen im Leben so? Diese Mühe verzinst sich wie Zinseszins und zahlt sich schnell aus.
      Lang lebe RSS, lang lebe das offene Web!