La page d’actualités qui vous intéresse ne propose pas de fils RSS ? Plusieurs services Web se chargent de transformer son contenu en fil. Feed43 est certainement l’outil le plus technique, mais sa version gratuite est extrêmement avantageuse. Démonstration ! Accessible même aux débutants !

C’est rageant ! La page d’actualités que vous voulez surveiller ne propose pas de fil RSS. Ou alors il existe bien un fil RSS général, mais qui relaye du coup toutes les rubriques. Trop de bruit ! Trop de perte de temps ! Même problème du côté du compte Twitter, de la page Facebook, de la newsletter… trop généralistes. Il existe heureusement une poignée de services Web – que je range dans la famille « HTML2RSS » – destinés à extraire automatiquement chaque actualité et à les insérer dans un fil RSS.

Les services les plus connus sont Feedity, FetchRSS, Feed Creator et Feed43. Tous fonctionnent sur un modèle économique freemium, proposant donc une version gratuite limitée et une version payante plus élaborée. Un modèle a priori rassurant en termes de pérennité… sauf que la plupart des tarifs me paraissent excessifs au vu du service rendu (indice négatif de pérennité et résistance à mon engagement financier). FetchRSS et Feedity ont l’avantage d’être assez intuitifs. Feed Creator est plus technique. Problème, les versions gratuites des 3 premières solutions (FetchRSS, Feedity et Feed Creator) sont très contraignantes. En gros, elles visitent la page qui vous intéresse une fois par jour, ne rapportent au maximum que 5 actualités par passage et détruisent votre fil si aucune actualité n’y apparait pendant une semaine. Donc, à éviter si votre page cible produit plus de 5 actualités par jour ou moins d’une par semaine. A moins que vous ayez le budget, bien sûr.

Se poser la question de la confidentialité…

Feed43 est un service d’origine russe (se poser donc la question de la confidentialité de vos données) créé en 2006 (indice de pérennité). Il est plus technique que ses concurrents, mais sa version gratuite n’est pas aussi limitée et ses versions payantes plus abordables. Nous verrons néanmoins que cet avantage se paye en temps passé lors de la configuration initiale de chaque page : entre 15 et 30 minutes.

Dans sa version gratuite, Feed43 visite votre page cible toutes les 6 heures (une fréquence qui a augmenté depuis peu, d’ailleurs) et ramène les 20 dernières actualités qui y apparaissent. Attention, si la page que vous placez sous surveillance affiche par exemple les 10 dernières actualités et que le site produit 15 actualités en 6 h… vous en louperez donc 5. Feed43, comme ses concurrents, travaille sur la page que vous lui fournissez… pas les suivantes. Aucun service n’est parfait ! Version gratuite de Feed43 ? L’autre limite se situe sur le « poids » de la page à surveiller (ici, 100 Ko, contre 250 Ko pour les versions payantes). Des pages d’actualités disposant d’une mise en page complexe ou affichant beaucoup d’actualités ne pourront donc pas être analysées avec la version gratuite.

Feed43, comme les autres, base donc son fonctionnement sur l’adresse Web (URL) que vous lui fournissez. Ici, nous allons réaliser ensemble un exercice sur la page « Égalité et diversité » du ministère de la Culture.  Ce qui nous fait dire que cette page est exploitable (ce n’est pas toujours le cas, donc), c’est que toutes les actualités ont la même apparence, la même mise en forme. Leur publication est donc certainement basée sur un système de gestion de contenu (Content Management System ou CMS en anglais). Dans d’autres cas… ce sera plus compliqué ! La page des nouvelles acquisitions de la base Joconde, par exemple, est beaucoup plus fruste, faite à la main. Là, Feed43, comme les autres, ne pourra rien faire. Et il faudra utiliser un service comme OnWebChange ou DeltaFeed pour générer un fil RSS assez basique. Mais revenons au ministère de Culture.

Screenshot - Feed43 - 01

Une fois l’URL fournie à Feed43, il faudra lui enseigner la manière dont les actualités se répètent. Il sera alors capable de détecter les motifs répétitifs séparant chaque actualité et en extraire a minima le titre, l’URL, le résumé… auquel nous allons ajouter l’image.  De quoi produire le fil RSS ci-dessous.

Screenshot - Feed43 - 51

Vous avez créé un compte à partir de Feed43 ? Nous pouvons donc y aller ! Cliquez d’abord sur « My Feeds » puis sur le bouton « Create a feed » (ici, « Create another feed »).

Screenshot - Feed43 - 02

Ensuite ? Une simple confirmation des « Conditions de service »… et c’est parti !

Screenshot - Feed43 - 03

La première étape consiste à fournir l’adresse de la page que vous souhaitez surveiller (ici, http://www.culture.gouv.fr/Thematiques/Egalite-et-diversite).  Collez cette adresse dans la zone… « Address ». Mais Feed43 vous demande également de renseigner le « jeu de caractères » utilisé dans la page (Charset). Aïe ? Non, pas d’inquiétude ! Pour le connaître, recourrez simplement au raccourci clavier ctrl+U (cmd+U sur Mac) pour faire apparaître le « code source » de la page (qui s’ouvre dans un nouvel onglet). Juste après, effectuez le raccourci ctrl+F sur PC (cmd+f sur Mac). Cela fait apparaître un petit champ de recherche au sein duquel vous saisissez charset= . Enfin, enfoncez la touche « Entrée/Retour à la ligne » de votre clavier. Dans le code source de la page, à droite de charset= , relevez la valeur du jeu de caractères. Il s’agit ici de utf-8 mais d’autres pages afficheront par exemple iso-8859-1 . C’est cette valeur que vous recopiez dans le champ « Encoding » de Feed43.

Screenshot - Feed43 - 04

Cliquez ensuite sur le bouton « Reload ».

Screenshot - Feed43 - 05

Bon… entre nous, c’était la partie la plus simple ! La page qui apparait ensuite contient tout d’abord une fenêtre affichant le code source de la page. Feed43 nous aide un peu en mettant en couleur certains éléments marquants du code. Cela constitue souvent un bon repère pour la suite. La fenêtre vous semble trop petite ? Et vous pensez qu’un copier/coller de tout son contenu dans un traitement de texte vous ferait gagner du temps ? Mauvaise idée ! Pour une raison que j’ignore (ça arrive…), cette opération modifie le code et risque de poser problème par la suite. Donc restons dans ce cadre. Un petit signe (+) en haut et à droite de la section permet tout de même d’étendre la zone.

Screenshot - Feed43 - 40

Pas besoin d’être un pro du HTML

Pour bien utiliser Feed43, encore faut-il en comprendre le fonctionnement. Vous lui fournissez une adresse Web ? Toutes les 6h, Feed43 va se connecter sur cette page et la balayer de haut en bas. Dans un premier temps, nous allons lui dire à partir de quel endroit il doit commencer à s’intéresser à son contenu et à partir de quel endroit il doit arrêter de l’analyser. Bref, nous devons circonscrire la zone contenant les actualités. Ensuite, nous devons l’aider à identifier chaque actualité et à la découper en rondelles pour lui permettre de construire un fil RSS en séparant clairement chaque article : le titre de l’article, le lien pointant vers l’article complet, l’extrait de l’article et éventuellement l’image.

Quand une page d’actualité est produite par un système de gestion de contenu comme WordPress, Joomla, Drupal, EZ-Publish (et tant d’autres), chaque « brique » de l’article (titre, lien, extrait, image, etc.) est entourée du même « code HTML ». Ce « Langage hypertexte à base de balises » est à la base du Web. Il permet simplement de décrire à votre navigateur comment composer la page. La balise <b>, par exemple, lui dit de composer le texte qui suit cette balise, en gras (bold). La balise </b> lui dit d’arrêter la mise en gras. Bref, le code <b>C'est gras</b> demandera à votre navigateur d’afficher « C’est gras » (sans les guillemets). Mais pas besoin d’être un pro du HTML pour utiliser Feed43, il est avant tout question de repérer les motifs qui se répètent d’une actualité à l’autre.

En quête de bornes

Première étape : aider Feed43 à circonscrire la zone qui nous intéresse. Avec Feedity et FetchRSS, beaucoup plus interactifs, il suffit de cliquer dans la zone. Ici, il faut d’abord tenter de repérer dans la page Web ce qui nous servira de borne supérieure et inférieure puis de retrouver ces éléments dans le code source.

Ci-dessous, les bornes (1) et (2) nous sautent aux yeux (ce ne sera pas toujours aussi simple). Mais petit problème classique ! Rappelez-vous que Feed43 balaye la page de haut en bas. Donc le premier « Actualités » qu’il va rencontrer est celui qui se trouve en (3). Il va falloir trouver le moyen de lui indiquer que c’est le deuxième qui nous intéresse. Lui trouver une unicité. Peut-être que le « / » placé avant nous suffira à identifier « / ACTUALITÉS » comme  point de départ de son analyse. Nous verrons bien. Et si ce n’est pas le cas, nous trouverons sans doute une solution au niveau du code HTML qui entoure cette section (Feed43 balaye le code source de la page, il ne balaye pas la page telle que nous la voyons dans notre navigateur).

Screenshot - Feed43 - 07

Pour nous aider à trouver où se situe ce « / ACTUALITÉS » dans la fenêtre de Feed43, nous allons utiliser une nouvelle petite astuce qui va nous faire gagner du temps. Revenez sur la page Web du ministère et positionnez votre souris en regard du texte (1) effectuez un bref clic droit (Ctrl+clic sur Mac). Selon votre navigateur, vous choisissez l’option « Examiner l’élément » (Firefox), « Inspecter » (Chrome) ou « Inspecter l’élément » (Internet Explorer). Un volet apparaît qui pointe sur le code HTML associé à cet élément. Ici, nous voyons que « ACTUALITÉS » est entouré des balises <h2> et </h2> (titre de 2e niveau).

Screenshot - Feed43 - 08

De retour dans Feed43, nous partons en quête de ces éléments, soit visuellement, soit par une recherche textuelle (Ctrl+F sur PC, Cmd+F sur Mac). Ici, il faut se placer pratiquement au milieu du code pour le trouver. Pourquoi si bas ? Notamment parce que le menu de la page (qui nous paraît basique) est en fait assez complexe et demande beaucoup de code pour le définir. Tiens ? Le « / » a disparu ! Pas grave. Ce qui nous importe, c’est d’avoir trouvé une borne solide sur laquelle nous appuyer : <h2>Actualités</h2> .

Screenshot - Feed43 - 09

Partons désormais en quête de notre borne inférieure. En descendant, nous voyons passer les titres des articles. Nous saurons donc à peu près où nous arrêter si nous avons préalablement repéré le titre du dernier article affiché sur notre page. A priori, ce « Toutes les actualités » constitue une bonne solution. Mais il y a un risque que cette chaîne de caractères puisse se retrouver un jour dans le corps du texte d’un des articles de la page. Le robot de Feed43 arrêterait alors son exploration de la page (de haut en bas, rappelez-vous). Je préfère, dans ces cas-là, prendre un peu de code à gauche et à droite, qui me semble suffisamment spécifique. Ma borne sera >Toutes les actualités< . J’aurais tout aussi bien pu utiliser class="readmore" , que vous apercevez juste avant. C’est le seul endroit de la page où ce code apparaît. Il pourrait donc aussi constituer une borne inférieure.

Screenshot - Feed43 - 10

Nous avons nos deux bornes. Reste à indiquer à Feed43 qu’il doit s’intéresser à la zone placée entre ces deux points. Pour signifier à Feed43 : « Intéresse-toi à cette zone », il suffit de placer {%} entre les deux bornes (attention, il s’agit bien d’accolades, pas de parenthèses, autour de « % »). Ce qui donne : <h2>Actualités</h2>{%}>Toutes les actualités< . Insérez cette formule dans la zone « Global Search Pattern » (motif de recherche global).

Screenshot - Feed43 - 42

Définir le motif d’extraction pour chaque article

La suite n’est pas très compliquée mais demande énormément de rigueur. Il faut en effet fournir à Feed43 (dans la zone « Item (repeatable) Search Pattern »), le motif qui lui permettra d’aspirer les éléments constitutifs de chaque article publié sur la page d’actualité. Motif qu’il répètera du haut en bas de la page jusqu’à épuiser le quota d’articles présents. Nous pourrions effectuer un « clic-droit-examiner » pour chaque élément (titre, description, image, etc.), mais ici l’observation du code suffira. Première étape, repérer dans le code, à partir de notre borne supérieure, les éléments utiles du premier article apparaissant dans la page. Nous recherchons donc, dans un ordre quelconque, le titre de l’article, l’extrait de l’article, l’URL du lien hypertexte pointant vers l’article et l’URL de l’image. De quoi constituer ultérieurement notre fil RSS.

À partir de notre borne supérieure (1), nous repérons d’abord le lien pointant vers l’article (2). Si vous avez le moindre doute, copiez ce lien, ouvrez un nouvel onglet dans votre navigateur… et connectez-vous à la page. Cela correspond bien au premier article. Le deuxième élément qui attire notre œil (3), c’est l’adresse de l’image. Ensuite (4), c’est au tour du titre et enfin de l’extrait (5).

Screenshot - Feed43 - 38

En HTML, l’URL (2) d’un lien hypertexte est toujours précédée de href=" . Attention, le guillemet anglais placé juste après href= est important. Il faudra donc l’inclure dans le motif d’extraction…. qui se terminera par un autre guillemet anglais (vous le voyez, discrètement placé après l’URL). Puisqu’un caractère spécifique suffit à dire à Feed43 « arrête d’aspirer dès que tu atteins ce caractère », le motif servant à extraire l’URL de l’article sera donc href="{%}" . Collez-le dans la zone.

Screenshot - Feed43 - 41

Il est néanmoins important de vérifier que ce motif (et les motifs que nous allons proposer après) sont identiques, se répètent. Un coup d’œil sur l’article suivant nous rassure, la structure est la même. Ensuite, nous devons extraire l’adresse de l’image (3). Celle-ci est encadrée par <img src="[adresse de l'image]" . Nous gérons donc la récupération de l’URL de l’image comme nous avons traité celle de l’article. Ce qui donne le motif <img src="{%}" .

Mais rappelons-nous que le robot de Feed43 suit nos ordres. Il a balayé le code jusqu’à trouver le motif href="{%}" et il a donc aspiré l’URL de l’article. Mais après ? Il faudrait lui dire de tout négliger jusqu’à ce qu’il atteigne le motif suivant : celui de l’image. L’instruction pour signifier « oublie », c’est {*} .  Bref, pour que Feed43 « aspire » l’URL de l’image après avoir « aspiré » celle de l’article, il suffit d’intercaler {*} entre les deux, soit href="{%}"{*}<img src="{%}" .

Screenshot - Feed43 - 43

Passons désormais au titre (4). Il est coincé entre <h3 class=″media-heading″> et </h3> . Donc si l’on veut que Feed43 « aspire » le titre, il faudra lui fournir le motif <h3 class=″media-heading″>{%}</h3> … et le faire précéder de {*} . Faites attention, tous les titres de toutes les pages Web que vous surveillerez ne seront pas encadrés par le même code. Il faudra vous adapter.

Screenshot - Feed43 - 44

Le dernier élément utile qui apparait dans notre balayage : c’est l’extrait du texte (5). Il est clairement coincé entre <p class="media-content"> et </p> . Bref, nous allons ajouter à notre motif d’extraction la chaîne {*}<p class="media-content">{%}</p> . Notre formule finale sera donc… href="{%}"{*}<img src="{%}"{*}<h3 class="media-heading">{%}</h3>{*}<p class="media-content">{%}</p> . Là aussi, tous les extraits d’articles de la planète Web ne seront pas entourés du même code. Pire, l’ordre des quatre éléments (titre, lien, image, extrait) dans le code source ne sera pas toujours celui que nous rencontrons ici.

Screenshot - Feed43 - 45

Nous arrivons au premier moment clé de l’opération. Nos formules permettent-elles à Feed43 d’extraire tous les éléments nécessaires à la constitution de notre fil RSS ? Cliquons sur « Extract » ! Victoire, les cinq articles présents sur la page initiale sont bien identifiés et toutes les valeurs utiles à notre futur fil RSS sont présentes. Remarquez que chaque partie est précédé d’une motif particulier ({%1}, {%2}, {%3}, {%4}) qui va nous permettre de distinguer chaque élément constitutif de notre fil RSS.

Screenshot - Feed43 - 46

Créer le fil RSS

Nous entrons dans la dernière étape qui consiste à élaborer le fil RSS. Les trois premiers champs sont préremplis, mais nous pouvons les personnaliser. Ils correspondent aux éléments qui définiront le « canal RSS » auquel vous pourrez vous abonner. C’est le titre placé dans le premier champ qui apparaitra comme titre du fil dans votre lecteur de fil RSS.

Screenshot - Feed43 - 22

Les trois champs suivants permettent de former le titre de chaque item (Title template), leur URL (Item Link template) et leur contenu (Item Content Template). Nous allons y insérer les motifs créés par Feed43. Pour le titre, il s’agit de {%3} . Pour l’URL, de {%1} (attention à ne pas confondre avec {%2} qui correspond à l’adresse de l’image). Le dernier élément ({%4}) correspond au texte de l’extrait. Commençons par les deux premières lignes.

Screenshot - Feed43 - 47

Pour la zone suivante, nous aurions certes pu nous satisfaire d’y saisir {%4} pour y faire apparaître l’extrait de l’article. Mais c’était sans compter sur notre envie d’y insérer l’image. Si vous tentiez {%4} {%2} (avec une espace entre les deux)… ce serait un échec ! Cela conduirait à la publication de l’extrait suivi du lien pointant vers l’image… mais pas l’image elle-même ! Il faut comprendre que toute cette zone doit être rédigée en HTML.

Pas de problème ! Rappelez-vous que nous avions vu précédemment dans le code de notre page que les images étaient encadrées par <img src="[URL de l'image]"> . Si nous voulons que l’image soit publiée au-dessus de l’extrait, nous allons commencer par saisir le motif <img src="{%2}"> . Nous souhaitons que l’image soit légèrement séparée du texte ? Nous allons indiquer à Feed43 d’effectuer deux retours à la ligne grâce aux deux balises <br /><br /> . Enfin, pour que Feed43 sépare bien l’image du bloc de texte, nous allons encadrer {%4} d’une balise qui permet la séparation de ce contenu : <div> . Au final, nous obtenons le motif <img src="{%2}"><br /><br /><div>{%4}</div>" .

Screenshot - Feed43 - 48

Cliquez sur le bouton « Preview ». Feed43 affiche alors la prévisualisation de votre fil. Pas d’inquiétude, une fois publié, le lien pointant vers l’article n’apparaîtra pas sous son titre (comme c’est le cas dans la copie d’écran ci-dessous) : les deux seront fusionnés et le titre deviendra cliquable. Remarquez en bas de chaque article la mention « delivered by Feed43 service » qui disparaitra si vous optez pour une version payante de Feed43.

Screenshot - Feed43 - 49

Votre fil est enfin prêt (1) et vous pourriez vous y abonner directement au sein de votre plateforme de veille, quelle qu’elle soit. Mais remarquez que plusieurs options sont disponibles. « Change file name » vous permet de personnaliser l’adresse du fil (2). Nous pourrions par exemple préférer « http://feed43.com/min-cult-egaliteFH-diversite.xml ». Vous pouvez aussi personnaliser le mot de passe qui vous permettrait de modifier les réglages du fil (3). Enfin, il vous est possible de protéger votre fil par mot de passe (4). La personne qui obtiendra l’adresse de votre fil devra alors saisir un mot de passe pour s’y abonner. Mais attention, rares sont les lecteurs de fil RSS qui savent gérer de tels fils. Inoreader le peut. À vous de tester cette fonction dans votre plateforme de veille.

Screenshot - Feed43 - 28

Ouf c’est terminé ! Vérifions que tout va bien une fois le fil transféré dans notre plateforme de veille. Effectuez donc l’opération habituelle pour vous abonner à un fil. Et voici le résultat !

Screenshot - Feed43 - 50

L’opération fut longue, c’est un fait ! Pour chaque page à suivre, il vous faudra compter désormais entre 15 et 30 minutes pour réaliser les règles d’extraction. C’est la rançon de la gratuité et de l’extrême personnalisation, ou d’une dépense modeste dans une version « pro ». Bref, si vous envisagez de suivre ainsi de nombreuses pages, il faudra prévoir quelques grosses journées de travail acharné. De quoi vous convaincre, convaincre votre client ou votre « n+1 » qu’il est temps d’investir dans un outil plus intuitif, mais payant, comme Feedity ou FetchRSS. À vous de voir !

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.