support de formation : yahoo! pipes les modules

28
Yahoo! Pipes : présentation Erwan Tanguy

Upload: erwan-tanguy

Post on 21-Jun-2015

795 views

Category:

Documents


0 download

DESCRIPTION

présentation des modules de Yahoo! Pipes

TRANSCRIPT

Page 1: Support de formation : Yahoo! pipes les modules

Yahoo! Pipes : présentation Erwan Tanguy

Page 2: Support de formation : Yahoo! pipes les modules

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

Page 3: Support de formation : Yahoo! pipes les modules

Les sources

Find First Site Feed

Yahoo! Local

Xpath Fetch Page

Fetch Feed

YQL

Item Builder

Flickr

Fetch CSV

Fetch Data

RSS Item Builder

Feed Auto-Discover

Page 4: Support de formation : Yahoo! pipes les modules

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.)

Page 5: Support de formation : Yahoo! pipes les modules

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-pipes-fonctionnalites-niveau-1/

Page 6: Support de formation : Yahoo! pipes les modules

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.)

Page 7: Support de formation : Yahoo! pipes les modules

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.

Page 8: Support de formation : Yahoo! pipes les modules

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é.

Page 9: Support de formation : Yahoo! pipes les modules

Les sources

RSS Item Builder

Fetch Auto-Discover

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.

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.

Page 10: Support de formation : Yahoo! pipes les modules

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.

Page 11: Support de formation : Yahoo! pipes les modules

Operators

Count

Renanme

Ce module permet de compter le nombre d’items dans un flux.

Ce module permet de copier ou de renommer des champs dans un item.

Page 12: Support de formation : Yahoo! pipes les modules

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.

Page 13: Support de formation : Yahoo! pipes les modules

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.

Page 14: Support de formation : Yahoo! pipes les modules

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. « [\d\D]* » 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

Page 15: Support de formation : Yahoo! pipes les modules

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-expressions-regulieres-partie-1-2

Source : Yahoo! Pipes de Mark Pruett, ed. O’Reilly

Page 16: Support de formation : Yahoo! pipes les modules

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).

Page 17: Support de formation : Yahoo! pipes les modules

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).

Page 18: Support de formation : Yahoo! pipes les modules

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.

Page 19: Support de formation : Yahoo! pipes les modules

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.

Page 20: Support de formation : Yahoo! pipes les modules

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.

Page 21: Support de formation : Yahoo! pipes les modules

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.)

Page 22: Support de formation : Yahoo! pipes les modules

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)

Page 23: Support de formation : Yahoo! pipes les modules

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

Page 24: Support de formation : Yahoo! pipes les modules

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

Page 26: Support de formation : Yahoo! pipes les modules

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.

Page 27: Support de formation : Yahoo! pipes les modules

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-de-surface-5