RSS-Bridge : reconnecter le web

Aujourd’hui, je vous propose de (re)découvrir RSS-Bridge. Il s’agit d’un projet open source développé par une équipe de passionné en PHP.  RSS-Bridge est capable de générer des flux RSS et Atom pour les sites Web qui n’en possèdent pas. Je vous propose de découvrir cet outil que j’utilise au quotidien et que j’adore.

Page d’accueil de RSS-Bridge

 

RSS-Bridge

RSS-Bridge est minimaliste et très puissant. Il se présente sous la forme d’une simple page Web. Il est possible de l’installer simplement sur votre serveur Web existant ou via Docker.

RSS-Bridge twitter
Recherche du hashtag RSS-Bridge (#rss-bridge) sur Twitter, au format Atom

Les Fonctionnalités RSS-Bridge

RSS-Bridge compte actuellement + de 300 Bridges inclus ! Un Bridge, c’est un script à même de s’exécuter avec RSS-Bridge pour extraire des données d’une page Web. Cela va du Bridge pour créer un flux RSS de suivi d’un prix pour un article sur Amazon, au Bridge pour suivre les dernières mises à jour de la communauté sur le Workshop Steam, mais aussi TheTVDB ou encore le suivi des séries sur Zone Telechargement.

Via la création d’un fichier config.ini.php, il est également possible de personnaliser et/ou d’activer plusieurs fonctions, dont :

  • Fuseau horaire ;
  • Gestion du cache ;
  • Protéger son instance avec une identification ;
  • Utiliser un proxy…

Plus d’info : Wiki RSS-Bridge : Custom Configuration (en anglais)

Installer RSS-Bridge

Pour une installation sur votre serveur Web, il vous faudra PHP 5.6 ou supérieur. Aussi, vous devrez vous assurer que toutes les extensions nécessaires sont bien activées (voir prérequis, en anglais). Pour une installation en Docker, c’est relativement simple. Le Wiki de RSS-Bridge possède une page d’explications en anglais : Wiki RSS-Bridge : Docker. Le Forum-des-NAS possède également un tutoriel à ce sujet à cette adresse : [Tuto] Installation de RSS-Bridge en Docker.

Mise en pratique

Dans ce guide, nous allons prendre le Bridge pour Wikipédia. Une fois activé, il apparaît automatiquement dans la liste des Bridges installés et disponibles ! Le paramétrage est simple. On sélectionne la langue, dans notre cas French, le type d’article qui nous intéresse Today’s featured article pour l’article labellisé du jour ou Did you know… pour les articles de la rubrique Le saviez-vous, voir : Wikipédia : Accueil principal

On clique sur Generate Feed afin d’obtenir un aperçu HTML des résultats, avec en haut de la page les liens pour les versions Atom / Mrss / Plaintext !

Bridge custom

Le projet permet facilement d’ajouter ses propres Bridges. Un Bridge personnalisé aura juste besoin d’être dans le dossier /bridges de l’application. Il devra ensuite être activé depuis le fichier whitelist.txt (comme pour les Bridges inclus) afin d’être utilisable depuis l’interface Web. Par exemple, j’utilise le Bridge Custom « CVE Details » afin de me créer des flux RSS d’informations sur les dernières CVE (Common Vulnerabilities and Exposures) d’un fabricant avec comme source le site https://www.cvedetails.com. Celui-ci permet, via l’ID du fabricant ou du produit, de créer un flux RSS Html / Atom / Mrss / Plaintext avec les dernières CVE connues.

Ci-dessus l’exemple avec QNAP, j’indique son Vendor ID récupéré depuis CVE Details (10080). Ensuite, je clique sur Generate feed pour générer mon flux RSS. Sur la page suivante, j’ai un aperçu de mon flux en HTML et la possibilité de récupérer mon flux en plusieurs formats :

Notre avis

Pour se tenir informé des actualités de sites ne possédant pas de flux RSS, RSS-Bridge est idéal. Il est simple et bien pensé. Son côté ouvert permet une prise en charge de nombreux sites. Le Bridge Custom CVE Details (présenté ci-dessus) est un Bridge proposé par un utilisateur quelques jours seulement après ma demande à la communauté. Autant dire que c’est très réactif pour le coup !

Que demander de plus, RSS-Bridge fait un excellent travail. On regrettera juste que certains Bridge ne soient plus maintenus. Cependant, j’en suis très satisfait et il répond parfaitement à mes attentes.