Wochenend-Projekt – RSS-Bridge für Tom’s Touché

Dieses kleine Projekt entstand aus zwei Überlegungen:

Leider bietet die taz keinen dedizierten Feed für den Touché an. Zum Glück gibt es aber eine Software namens RSS-Bridge, die Tools bereitstellt, um eine Website zu scrapen und einen RSS-Feed zu erstellen.

Ich habe mich am Wochenende also etwas mit RSS-Bridge beschäftigt und eine Bridge erstellt. Ich musste mich ein paar Stunden in das System einarbeiten, dann war es nicht sehr schwer, einen Feed für den Touché zu programmieren.

<?php

class TomsToucheBridge extends BridgeAbstract
{
    const NAME = 'Toms Touché';
    const URI = 'https://taz.de/#!tom=tomdestages';
    const DESCRIPTION = 'Your daily dose of Toms Touche.';
    const MAINTAINER = 'latz';
    const CACHE_TIMEOUT = 3600; // 1h

    public function collectData()
    {
        $url = 'https://taz.de/';
        $html = getSimpleHTMLDOM($url); // Docs: https://simplehtmldom.sourceforge.io/docs/1.9/index.html
        $date = $html->find('p[x-ref]');
        $date = trim($date[0]->innertext);
        [$day, $month, $year] = explode('.', $date);
        $image = $html->find('img[alt="tom des tages"]');

        $item = [];
        $item['title'] = "Toms Touché - $date";
        $item['uri'] = 'https://taz.de/#!tom=tomdestages';
        $item['timestamp'] = mktime(0, 0, 0, $month, $day, $year);
        $item['content'] = $image[0] . '</img>'; // This isn't good HTML style, but at least syntactically correct
        $item['uid'] = $image[0]->getAttribute('src');
        $this->items[] = $item;
    }
}

Nachdem ich den Pull Request am 3. Februar eingereicht hatte, wurde er gestern (6. März) in das Projekt gemerged. Falls Du also auch gerne den tägliche Touché in Deinem Feedreader haben möchtest, installiere Dir RSS-Bridge und nutze die Touché-Bridge.

(Photo by AbsolutVision on Unsplash)

Comments

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Falls du auf diesen Beitrag mit einem Artikel auf deiner eigenen Webseite geantwortet hast, kannst du hier die URL deines Beitrags eingeben. Dabei sollte es sich um die Permalink-URL handeln. Deine Antwort wird dann (möglicherweise nach der Moderation) auf dieser Seite angezeigt. Falls du deine Antwort aktualisieren oder entfernen möchtest, aktualisiere oder lösche deinen Beitrag auf deiner eigenen Webseite und gib die URL des Beitrags erneut ein. (Erfahre mehr über Webmentions.)