Français | English |
Sommaire : | Summary: |
Définition |
Definition |
Un agrégateur de nouvelles, également appelé un agrégateur de flux, lecteur de flux, lecteur de nouvelles, lecteur RSS ou simplement agrégateur, est un logiciel client ou une application web qui regroupe en un seul endroit des contenus web syndiqués tels que des journaux en ligne, des blogs, des podcasts et des blogs vidéo (vlogs) pour en faciliter la consultation 1. | A news aggregator, also termed a feed aggregator, feed reader, news reader, RSS reader or simply an aggregator, is client software or a web application that aggregates syndicated web content such as online newspapers, blogs, podcasts, and video blogs (vlogs) in one location for easy viewing 1. |
Cela peut être un puissant outil de veille et c’est encore très utilisé par des journalistes. | It can be a powerful monitoring tool and is still widely used by journalists. |
Pourquoi? |
Why? |
Premièrement, j’y vois une alternative aux lettres d’information. L’agrégateur de nouvelles permet de suivre une site web sans donner une adresse email, cela élimine une source potentielle de pourriels. | At first, I see it as an alternative to newsletters. The news aggregator allows to follow a website without giving an email address, this eliminates a potential source of spam. |
Deuxièmement, j’y vois surtout une alternative aux fils d’actualité des réseaux asociaux sous contrôle impérialiste dont celui de Facebook. L’ordre d’apparition des actualités ne dépend plus du bon vouloir d’une entreprise privée, il dépend des fonctionnalités de l’agrégateur et de leur utilisation, il est souvent possible de les trier par ordre chronologique et par flux. A mon humble avis, utiliser Facebook pour informer et s’informer est une bêtise puisque ce dernier peut manipuler les fils d’actualité à sa guise, il peut cacher certaines activités, il peut insérer des publicités entre deux actualités et il peut mettre en avant des actualités en fonction de ses propres priorités. Par exemple, il peut cacher ou rendre moins accessibles des publications qui n’encouragent pas les utilisateurs à cliquer sur ses publicités, il peut favoriser ses clients qui payent pour être mieux mis en avant. A quoi bon avoir des tonnes d’abonnés s’ils ne voient pas ou très peu les contenus des pages et des personnes auxquelles ils s’abonnent? | Secondly, I see it above all as an alternative to the news feeds of asocial media under imperialist control, such as Facebook. The order in which the news items appear no longer depends on the goodwill of a private corporation, it depends on the aggregator’s features and their use, it’s often possible to sort them by chronological order and by feed. In my humble opinion, using Facebook to inform and inform oneself is a stupidity since the latter can manipulate the news feeds as it pleases, it can hide certain activities, it can insert ads between two news items and it can highlight news items according to its own priorities. For example, it can hide or make less accessible publications that don’t encourage users to click on its ads, it can favour its customers who pay to be better promoted. What’s the point of having tons of subscribers if they don’t see or see very little of the content of the pages and people they subscribe to? |
Comment? |
How? |
J’ai trouvé deux articles à ce sujet 23 il y a quelques mois, cela semblait presque trop simple. Lorsque j’ai essayé d’utiliser le code source du projet mentionné dans le premier article, j’ai obtenu le message d’erreur « l’en-tête CORS ‘Access-Control-Allow-Origin’ est manquant » 4. Bien évidemment, je ne peux pas modifier cela sur chaque serveur. Deux solutions s’offraient à moi, soit je consommais le flux RSS et je produisais du XML ou du JSON sur mon serveur, soit j’utilisais un proxy CORS. J’ai déjà implémenté des services web REST similaires à la première solution avec JAX-RS, je voulais faire le moins de choses possibles côté serveur donc j’ai opté pour la seconde solution. J’utilise temporairement le proxy CORS appelé AllOrigins 5. | I found two articles on this subject 23 several months ago, it seemed to be almost too simple. When I tried to use the source code of the project mentioned in the first article, I got the error message « CORS header ‘Access-Control-Allow-Origin’ missing » 4. Obviously, I can’t modify this on every server. There were two solutions, either I consumed the RSS feed and produced XML or JSON on my server, or I used a CORS proxy. I already implemented REST web services similar to the first solution with JAX-RS, I wanted to do as little as possible on the server side. Therefore, I opted for the second solution. I’m temporarily using the CORS proxy named AllOrigins 5. |
Comme je voulais rendre le projet plus facile à utiliser, j’ai intégralement réécrit le code Javascript pour qu’il puisse fonctionner sur d’anciennes versions de Firefox for Android (et accidentellement sur Microsoft Internet Explorer 11), j’ai rajouté quelques commentaires, j’ai ajouté un descripteur de déploiement (web.xml) et enfin, j’ai ajouté un script Ant (build.xml) pour construire le WAR, changer le propriétaire des fichiers (l’utilisateur de SFTP est root, le serveur web ne doit pas tourner en tant que root pour des raisons de sécurité) et téléverser les fichiers sur le serveur. Les URLs sont codés en dur dans un fichier JSON pour le moment mais j’arrangerai cela dans les semaines à venir. Le code source est ici 6. | As I wanted to make the project easier to use, I completely rewrote the Javascript code so that it could run on older versions of Firefox for Android (and accidentally on Microsoft Internet Explorer 11), I added some comments, I added a deployment descriptor (web.xml) and finally, I added an Ant script (build.xml) to build the WAR, change the owner of the files (the SFTP user is root, the web server mustn’t run as root for security reasons) and upload the files to the server. The URLs are hardcoded in a JSON file for the moment but I’ll fix this in the coming weeks. The source code is here 6. |
Vous pourrez utiliser mon tutoriel sur l’auto-hébergement 7 si vous partez de zéro avec un serveur que vous voulez mettre sous GNU Linux. | You’ll be able to use my tutorial about self-hosting 7 if you start from scratch with a server that you want to run under GNU Linux. |
Conclusion |
Conclusion |
N’hésitez pas à me contacter 8 si vous avez des questions ou des suggestions. J’espère que mon code source vous sera utile. En tout cas, mon projet fonctionne, je n’ai pas écrit un article volontairement trompeur pour faire du clic et du fric. La publicité en ligne nuit à Internet, elle est absente de mon blog. | Don’t hesitate to contact me 8 if you have some questions or some suggestions. I hope that you’ll find my source code useful. Anyway, my project works, I didn’t write a deliberately misleading article to make clicks and money. Online advertising harms the Internet, it’s absent from my blog. |
P.S : Entre temps, j’ai ajouté le support partiel des formats Atom et OPML. | P.S: In the meantime, I’ve added partial support for Atom and OPML formats. |
Références |
References |
[1]Article de Wikipédia sur les agrégateurs de nouvelles [2]« Comment créer une app de lecture RSS en JavaScript » sur Hongkiat [3]« Comment récupérer et analyser des flux RSS en JavaScript » sur CSS-Tricks [4]« Raison : l’en-tête CORS ‘Access-Control-Allow-Origin’ est manquant » sur MDN [5]proxy CORS All Origins [6]Red Feed Aggregator [7]« L’auto-hébergement : Pourquoi? Comment? » [8]Contact |
[1]Wikipedia article about the news aggregator [2]« How to Create a RSS Reader App in JavaScript » on Hongkiat [3]« How to Fetch and Parse RSS Feeds in JavaScript » on CSS-Tricks [4]« Reason: CORS header ‘Access-Control-Allow-Origin’ missing » on MDN [5]CORS proxy All Origins [6]Red Feed Aggregator [7]« Self-hosting: Why? How? » [8]Contact |
Les photos de cet article sont mises à disposition selon les termes de la Licence Creative Commons Attribution – Pas d’Utilisation Commerciale – Pas de Modification 3.0 non transposé |
The photos of this article are licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License |
Cet article est mis à disposition selon les termes de la Licence Creative Commons Attribution – Pas d'Utilisation Commerciale – Partage à l'Identique 3.0 non transposé |
This article is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License |
Auteur : Julien Gouesse | Author: Julien Gouesse |
-
Articles récents
- Manifestation du premier mai 2024 lors de la fête du travail à Paris [Demonstration of May first, 2024 during the Labor Day in Paris]
- Mon week-end dans les gorges du Verdon [My weekend in the Verdon Gorge]
- Quelques pistes pour des rencontres hors ligne à Paris [A few leads for some offline dating in Paris]
- Mon comparatif des lieux de karaoké à Paris [My comparison of karaoke spots in Paris]
- Manifestation contre la loi immigration (loi Darmanin) dimanche 21 janvier 2024 à Paris [Demonstration against the immigration law (Darmanin’s law) Sunday, January 21st, 2024 in Paris]
Archives
- Mai 2024
- avril 2024
- mars 2024
- janvier 2024
- décembre 2023
- août 2023
- juillet 2023
- juin 2023
- Mai 2023
- avril 2023
- mars 2023
- février 2023
- janvier 2023
- octobre 2022
- août 2022
- Mai 2022
- juin 2021
- Mai 2021
- mars 2021
- février 2021
- janvier 2021
- décembre 2020
- novembre 2020
- octobre 2020
- juin 2020
- Mai 2020
- avril 2020
- mars 2020
- février 2019
- décembre 2018
- Mai 2018
- septembre 2017
- juillet 2017
- Mai 2017
- mars 2017
- novembre 2016
- Mai 2016
- avril 2016
- mars 2016
- janvier 2016
- décembre 2015
- octobre 2015
- août 2015
- juin 2015
- Mai 2015
- avril 2015
- février 2015
- janvier 2015
- novembre 2014
- octobre 2014
- septembre 2014
- août 2014
- juillet 2014
- juin 2014
- Mai 2014
- avril 2014
- mars 2014
- février 2014
- janvier 2014
- décembre 2013
- octobre 2013
- septembre 2013
- août 2013
- juillet 2013
- juin 2013
- Mai 2013
- mars 2013
- janvier 2013
- décembre 2012
- novembre 2012
- octobre 2012
- septembre 2012
- août 2012
- juillet 2012
- juin 2012
- Mai 2012
- avril 2012
- mars 2012
- février 2012
- janvier 2012
- décembre 2011
- novembre 2011
- octobre 2011
- septembre 2011
- juillet 2011
- Mai 2011
- avril 2011
- mars 2011
- février 2011
- décembre 2010
- novembre 2010
- octobre 2010
- septembre 2010
- août 2010
Catégories
Categories
- 11 septembre 2001
- A bout portant
- ACTA
- AdopteUnMec
- amour
- APRIL
- art
- be2
- CGT
- CNRS
- communisme
- doom-like
- droit d'auteur
- Flash
- FPS
- féminisme
- gastronomie
- Goldeneye
- HADOPI
- INPI
- Isabelle Vodjdani
- Java
- JOGL
- journée internationale de la femme
- Jussieu
- l'amour est aveugle
- LCR
- LGBTI
- Linux
- logiciels libres
- loppsi 2
- LRU
- manifestation
- marxisme
- Meetic
- Molehill
- NPA
- OpenGL
- P2P
- Paris
- Pastas Party
- PIPA
- retraite
- révolution
- Sarkozy
- secret story 4
- skyblog
- SOPA
- speed dating
- The Company Men
- trotskysme
- TUER
- télé-réalité
- UNEF
- URSS
- wordpress
Ping : How to parse an RSS feed using JavaScript? - Design Corral