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)

Leave a Reply

Your email address will not be published. Required fields are marked *

To respond on your own website, enter the URL of your response which should contain a link to this post's permalink URL. Your response will then appear (possibly after moderation) on this page. Want to update or remove your response? Update or delete your post and re-enter your post's URL again. (Find out more about Webmentions.)