2. Présentation
Yahoo! Pipes est une plateforme assez novatrice
puisqu’elle permet gratuitement de modifier ou de créer
des flux de contenus sans programmation.
Pourtant, monter des pipes n’est pas si facile dès qu’on
veut y ajouter quelques subtilités.
Pour nos formations sur Yahoo! Pipes, il est indispensable
que les stagiaires est un compte chez Yahoo! Pour pouvoir
accéder à la plateforme et créer des pipes.
Nous allons voir :
Les modules
Comment créer des filtres
Comment créer des flux à partir d’une page html
Comment créer des requêtes
Comment créer des pipes complexes
Sur ce document vous trouverez les détails essentiels sur la
plupart des modules de la plateforme Yahoo! Pipes.
Source : Yahoo! Pipes de Mark Pruett,
ed. O’Reilly
4. Les sources
Find First Site Feed
Yahoo! Local
Ce module est simple. Il permet
de récupérer le premier flux
déclarer d’un site. Si aucun flux
RSS n’est présent, il n’y aura pas
de réponse.
Ce module est peu utilisable en
France. Il permet de créer une
carte sur une ville autour d’un
thème. (Je n’aborderai pas ce
module.)
5. Les sources
Xpath Fetch Page
Ce module est un des outils les
plus puissant de YP. Il va vous
permettre de générer un flux sur
une page en ciblant une zone
précise. Généralement, on ajoute
un module Regex ensuite pour
déterminer quels seront les
contenus Titre, Description,
Lien…
Ce module nécessite une bonne
connaissance du HTML.
Syntaxe XPath :
Nodename : (ex : paragraphe ou body) sélectionner tous
les nœuds enfants du nœud nommé
/ : Sélectionner à partir du nœud racine
// : Sélectionner les nœuds présents dans le document qui
correspondent quel que soit leur emplacement à la
sélection
. : Sélectionner le nœud courant
.. : Sélectionner le parent du nœud courant
@ : Sélectionner des attributs
//* : Sélectionner tous les éléments
//p : Sélectionner tous les éléments de p
P>* : Sélectionner tous les nœuds enfants de p
//*[@id=’page’] : Sélectionner tous les éléments par id
//*[@title] : Sélectionner les éléments avec attributs
source : http://www.stratieo.com/les-modules-de-yahoo-pipesfonctionnalites-niveau-1/
6. Les sources
Fetch Feed
YQL
Ce module est un des plus utilisés.
Il permet de récupérer des flux
RSS et de les mélanger pour
générer en sortie un unique flux.
Généralement, on utilise ensuite
un filtre pour ne récupérer des
flux que les contenus qui nous
intéressent.
Ce module est assez complexe. Il
permet de récupérer des données
via une requête en YQL, c’est-àdire une forme de langage très
proche du SQL propre à Yahoo!.
(Je n’aborderai pas ce module.)
7. Les sources
Item Builder
Flickr
Ce module permet de créer un
item avec ses différents champs. Il
peut être utile pour reformuler
certains flux.
Pourrons l’utiliser dans un
module Loop par exemple et ainsi
créer des modifications en chaine.
Ce module permet, avec une clé
API à obtenir sur le site de Flickr,
de récupérer des images autour
d’un mot clé et d’une
géolocalisation.
8. Les sources
Fetch CSV
Fetch Data
Ce module permet de récupérer
des données à partir d’un fichier
CSV en ligne (sur Google Drive
par exemple). Ces données
pourront être ensuite récupérer
en RSS ou en CSV.
Ce module permet de récupérer
des données à partir d’un fichier
RSS ou Atom en. Il faut ensuite
indiquer les données à récupérer.
Cela ne propose pas comme Fetch
Feed un résultat pré organisé.
9. Les sources
RSS Item Builder
Ce module est assez proche de
Item Builder mais orienté RSS. Il
va permettre de bien organiser les
données pour qu’elles puissent
bien être interprétées ensuite.
Fetch Auto-Discover
Ce module permet de récupérer
tous les flux RSS répertoriés sur
une page à la différence de Find
First Site Feed qui ne prend que le
premier. Attention, comme Fetch
Data, le résultat n’est pas
organisé, il faudra d’autres
modules (Loop + Fetch Feed)
ensuite pour structurer la version
finale de votre pipe.
10. User Inputs
Les modules de User inputs permettent de créer des
formulaires dans votre pipe, pour ainsi proposer des résultats
différents à partir d’un même montage.
Les différents modules sont destinés à des formats de données
différents :
Date
URL
Nombre
Texte
Données de localisation
Pour aller au-delà, il vous permettra d’utiliser un pipe modèle
à l’intérieur d’un ou plusieurs autres pipes. Le pipe enverra
des données via les inputs grâce au module Loop dans le
second pipe puis récupèrera les données à exploiter.
11. Operators
Count
Ce module permet de compter le
nombre d’items dans un flux.
Renanme
Ce module permet de copier ou de
renommer des champs dans un
item.
12. Operators
Create RSS
Ce module est assez proche de
RSS Item Builder mais ne
nécessite pas l’utilisation d’un
Loop pour fonctionner. Vous allez
pouvoir améliorer les placements
des données (des contenus d’un
flux RSS mal formé par exemple)
dans des champs reconnus.
13. Operators
Regex
Ce module est très puissant. Il
permet de reformer les contenus à
partir de formule, de les modifier
en les réduisant ou en les
augmentant. Il peut mémoriser
temporairement des données.
14. Operators
Regex
Ce module utilise les expressions régulières pour la manipulation.
Les expressions régulières sous Yahoo! Pipes demandent un peu de pratique. « [dD]* » indique
un contenu a ne pas prendre en compte – il précède ou suit les contenu recherchés. « (.*) » indique un
contenu à retenir. Il est possible d’en retenir plusieurs qui pourront se faire appeler ensuite $1, $2, etc.
Parfois « (.*) » ne permet pas de récupérer les contenus en raison de saut de ligne par exemple. Il est
possible d’utiliser alors « ([^>]*) », de même pour les liens avec « ([^"]*) ».
Si vous indiquez ^http://(.*), la valeur $1 sera égale à une url sans http://.
+ http://www.stratieo.com/les-modules-de-yahoo-pipes-fonctionnalites-niveau-2-3-et-4/yahoo-pipes-regex-2/
Pas simple à utiliser, mais impressionnant quand ça marche !
En complément de Xpath Fetch Page, le résultat sera définit en fonction de sa place dans l’item (${td.0.span.0.a.href} par exemple pour aller
chercher un lien dans un élément précis).
Voir aussi :
http://bibliotheques.wordpress.com/2009/05/13/yahoo-pipes-tutoriel-6-expressions-regulieres/
http://fr.wikipedia.org/wiki/Expression_rationnelle
http://www.siteduzero.com/informatique/tutoriels/concevez-votre-site-web-avec-php-et-mysql/les-expressions-regulieres-partie-1-2
15. Operators
Regex
Voir aussi :
http://bibliotheques.wordpress.com/2009/05/13/yahoo-pipes-tutoriel-6-expressions-regulieres/
http://fr.wikipedia.org/wiki/Expression_rationnelle
http://www.siteduzero.com/informatique/tutoriels/concevez-votre-site-web-avec-php-et-mysql/les-expressionsregulieres-partie-1-2
Source : Yahoo! Pipes de Mark Pruett, ed. O’Reilly
16. Operators
Tail & Truncate
Split & Union
Ces deux modules servent à ne
sélectionner qu’une partie des
résultats d’un flux ou d’une
addition de flux. Tail prend le
nombre indiqué en partant du
dernier et Truncate à partir du
premier.
Ces deux modules permettent de
séparer (Split) un flux pour en
faire différentes choses ensuite ou
de réunir des flux ensemble
(Union).
17. Operators
Sub-element
Sort
Ce module est utilisé lorsqu’une
seule donnée est à garder. Si on
choisit « item.title », les résultats
n’afficheront plus dans chaque
item que le titre dans un élément
« content ».
Ce module permet de changer
l’ordre des items en fonction de
leur date par exemple. Deux choix
sont possibles : ascending (du
plus ancien au plus récent) et
descending (inverse).
18. Operators
Filter
Ce module est très utilisé puisqu’il
permet de sélectionner des
contenus à garder ou à exclure.
Son utilisation n’est pas très
complexe mais il peut arriver que
ça ne fonctionne pas comme
prévu.
Options :
Permit/Block : vous choisissez de
bloquer ou de permettre
All/Any : Toutes les conditions
doivent être présentes (très
restrictif) ou seulement une des
règles
Contains/Does not contain/Matches
regex/is greater than/is/is less
than/is after/is before : définit la
règle d’un contenu pour un
contenant. Matches regex permet
d’utiliser des expressions régulières.
19. Operators
Loop
Ce module est utilisé pour générer
à partir d’un flux de données une
boucle d’effets. Pratiquement tous
les modules peuvent être utilisé
dans un loop. Il est même
possible, et c’est là-aussi qu’il est
puissant, de récupérer un autre
pipe avec par exemple des inputs
et boucler sur son montage avant
de continuer le pipe.
20. Operators
Location Extractor
Reverse
Ce module est utilisé lorsque des
données de géolocalisation sont
présentes dans les flux. Il les
organise alors dans un élément
y:location où vous retrouverez les
valeurs de latitude, de longitude…
Les données de localisation
peuvent se trouver dans un fichier
CSV par exemple et vous avez
besoin de les exporter vers une
carte.
Ce module d’inverser l’ordre des
items, moins précis Sort puisque
cela se fait à la voler sans référent
autre que l’ordre au départ.
21. Operators
Unique
Web service
Ce module permet d’enlever des
doublons. Il est possible de choisir
l’élément de référence qui peut
être donc un lien, un titre ou une
description. Ce module est limité
au fait qu’un titre légèrement
différent ne sera pas pris en
compte. Pour les liens, le
problème peut venir des
réductions d’URL qui cachent
l’URL originale.
Ce module permet d’envoyer des
données en JSON d’un serveur
externe et de l’insérer dans un
flux. Il est indispensable de
vérifier que le serveur accepte de
recevoir des données via HTTP
POST. (Je n’aborderai pas ce
module.)
22. URL
URL Builder
Ce module permet de générer des
URLs qui peuvent être parfois
complexe et intégrer des parties
variables avec des inputs.
Options :
Base : l’URL principale
Port : si un port est nécessaire (si
vous insérer 12, cela affichera
http://nomdedomaine.com:12/)
Path elements : correspond aux
éventuels dossiers et fichier
Query parameters : pour ajouter des
valeurs dans l’URL (pratique pour des
moteurs de recherche par exemple)
23. Sting
Les modules de String permettent de
travailler le contenus des éléments.
Certaines particularités sont assez
proches du Regex. Généralement, ils
sont utilisés dans un Loop ou dans la
suite d’un input.
Yahoo! Shortcuts : classifier des mots
ou expressions courantes (surtout
USA)
String Replace : remplacer des
termes par d’autres
String Builder : construire des
contenus en les imbriquant
String Tokenizer : sépare des
contenus à partir d’un élément
récurrent (des virgules, tirets…)
Sub String : couper la longueur d’un
élément en nombre de caractères
Term Extractor : extraire d’un
élément les thématiques principales
(mots clés)
String Regex : sur le principe de
Regex
Private String : permet de mettre des
données sécurisées
24. Date
Les modules de Date permettent de
sur les dates, sur leurs formats.
Data Builder : limiter un flux en fonction
de date et de requête (en anglais).
L’expression « 2 days ago » enlevera tous
les contenus plus vieux de deux jours.
Options (exemples) :
Tomorrow, Yesterday, Now
X days ago
As welle as « xx/xx/20xx » and
« xx:xx EST »
Jan. 12, 2001
10/21/2012
01 March 13
+5 hours
-10 days
Date Formatter : modifier le format de
présentation des dates.
Options (exemples) :
02-12-2013 : %m-%d-%Y
Tuesday, Feb 12, 13 at 08:45 PM :
%A, %b %d, %y at §I:%M %p
02/12/13 : %D
20:45 : %R
February : %B
26. Location & Number
Location Builder
Simple Math
Le module Location Builder
permet de générer des données de
géolocalisation. Avec ensuite le
module Location Extractor il sera
possible de générer un élément
y:location dans un flux.
Le module Simple Math permet
de faire des opérations (additions,
soustractions, multiplications,
divisions, pourcentage…). Peutêtre utilisé avec un module Count
par exemple.
27. Et aussi
Dans Favorites et My pipes se trouve les pipes qui ont déjà été
enregistrés sur un compte. Il est possible de les réutiliser dans un
nouveau pipe via un Loop. Le pipe devra comporter des inputs
pour que des données puissent y être injectées.
Dans Deprecated se trouve des modules anciens qui sont
encore fonctionnel mais qui ne sont pas conseillés et risque de ne
plus apparaître.
Le module Fetch Page, qui a été remplacé par le module Xpath
Fetch Page, est utilisé pour scanner des pages HTML et générer
un flux RSS.
Voir : http://blog.voyelle.me/veille/des-flux-rss-a-une-veille-desurface-5
28. Suivre notre veille
Sur Diigo : https://www.diigo.com/user/erwantanguy/pipes
Sur notre blog http://www.digital-strategy.fr/
Retrouver ce document ainsi que d’autres slides sur
http://www.slideshare.net/erwantanguy/
http://www.stratieo.com/mot-cle/yahoo-pipes/
Ouvrage : Yahoo! Pipes de Mark Pruett, ed. O’Reilly