RSS-Feeds sind eine sehr praktische Sache. Neue Artikel der Wissenschaftler im Blogportal de.hypotheses.org zum Beispiel werden mit Hootsuite dank RSS-Feeds in die sozialen Medien weitergeleitet. Dabei störte mich, dass man nicht erkennen konnte aus welchem Blog die Überschriften in den Tweets stammten.
Heute habe ich daher mit Yahoo Pipes experimentiert. Yahoo Pipes erlaubt es RSS-Feeds und andere Online-Daten zu einem Mash-Up zu verknüpfen, zu bearbeiten und neu auszugeben, und das alles mir einer visuellen Drag-and-Drop-Oberfläche.
Ich wünschte mir, dass Tweets vorne die Subdomain des Blogs in eckigen Klammern anzeigen. Der obige Tweet sollte also so aussehen:
[francofil] Mittwochstipp 8: Online-Datenbank internationaler Verträge und Abkommen Frankreichs *Shortlink*
Um das zu erreichen waren 7 Schritte bei Yahoo Pipes nötig, die ich im folgenden kurz beschreibe:
1. „Fetch Feed“: Damit kann man die Ursprungsfeeds in die Bearbeitungsoberfläche bringen. Dazu benutzte ich die zusammengefassten Feeds aus meinem TinyTinyRSS-Feedreader.
2. „Union“: Damit werden die beiden Feeds zu einem zusammengefasst.
3. „Sort“: Damit die Reihenfolge der Artikel wieder stimmt, müssen diese absteigend nach Veröffentlichungsdatum „item.pubDate“ sortiert werden.
4. „Rename“: Aus der Variable „item.link“, dass ist jeweils der Link im RSS Feed, kopiere ich eine zusätzliche Variable, die ich „item.tag“ oder kurz „tag“ nenne.
5. „Regex“: Mit Hilfe von Regular Expressions (Regex) kann ich aus dem „tag“ die Bestandteile herausschneiden, die ich nicht behalten möchte. Ich möchte nur die Subdomain behalten, also entferne ich „http://“, „.hypotheses.org/“ und alle darauffolgenden Zahlen „{0-9}“. Übrig bleibt somit nur die Subdomain, die in der Variable „tag“ bzw. „item.tag“ gespeichert ist.
6. „Loop“ und „String Builder“: Diesen Schritt habe ich mir bei anderen Pipes abgeschaut. Im Prinzip ersetzt es alle Titel der RSS-Feeds durch einen neu erstellten Titel mit der Form „[‚tag‘] Titel“. Es fügt also im Prinzip nur den „tag“, also die Subdomain, vor den Titel ein.
7. „Pipe Output“: Das ist das Ergebnis, wiederum als RSS-Feed.
Unten drunter gibt es noch einen Debugger, der einem sofort das Ergebnis der Experimente präsentiert. Wenn man die Pipe speichert und den Editor wieder schließt, kann man nun einen neuen RSS-Feed abonnieren, der so aussieht, wie man das möchte.
Wer sich das ganze einmal selbst anschauen möchte, kann sich bei Yahoo einloggen und dort das Beispiel selbst nutzen und umbearbeiten:
http://pipes.yahoo.com/pipes/pipe.info?_id=40c025ef43dc3bcd931fb7b7390e055d
Damit sind die Grenzen von Pipes bei weitem nicht erschöpft. Es gab auch einen Rat PHP zu nutzen, jedoch fand ich das mit den Pipes doch noch relativ übersichtlich, wenn man mal eine gute Vorlage gesehen hat.
Und tatsächlich hat es gerade eben zum ersten Mal funktioniert:
Schauen wir mal, ob das so bleiben kann. Ich werde auch noch weiter damit experimentieren. Viel Spaß beim Mashen und Mixen!
Danke auch an die Tipps von Andreas Beer und Henning Krause!
https://twitter.com/henningkrause/statuses/375151672810414080
Hallo.
Man kann doch mit Sicherheit die MIT yahoo-pipes erstellten Rss-Feeds auf Social-Media-Plattformen wie z.B. Twitter posten. Ich möchte das gerne direkt über yahoo-pipes machen. Twitterfeed ist nicht zu 100 % verlässlich.
Hast du da ein paar Ideen oder Links?
grüße
Na klar: Bei de.hypotheses.org nutze ich Hootsuite (http://Hootsuite.com) für die RSS-Weiterleitungen. Privat würde ich eher „If this then that“ (http://ifttt.com) empfehlen.
Übrigens, das Ergebnis der Weiterleitung kannst Du Dir hier anschauen: https://twitter.com/dehypotheses
Hallo Sascha, tolle Anleitung! Daumen hoch!
Weißt du vielleicht, wie ich den Inhalt eines Feedeintrages ändern kann? Also ganze Texte ersetzen zum Beispiel?
Liebe Grüße
Jerome
Hi Jerome, es freut mich, dass Dir die Anleitung nützt.
Um den Inhalt zu bearbeiten solltest Du vermutlich mit „item.content“ oder vielleicht auch „item.content.html“ arbeiten. Den Inhalt von „content“ kannst Du beispielsweise mit Regex (regular expressions) verändern oder direkt durch einen anderen Input (rechts bei „User Inputs“) ersetzten. Ganz allgemein kann man das nicht sagen, wenn Du nicht ganz genau beschreibst, aus welcher Quelle Du welchen Inhalt an welcher Stelle haben möchtest.
Ich rate Dir einfach mal mit diesen Elementen zu experimentieren, andere Pipes als Beispiele zu suchen, die ähnliches machen und daraus zu lernen und dann „Pipe Output“ anzuklicken und unten in der Leiste das Ergebnis zu überprüfen. Viel Spaß beim Feeds basteln!