Pubblicato il 25/01/13e aggiornato il

Come unificare due o più URL di Feed con Yahoo Pipes.

Come avere con Yahoo Pipes un feed comprensivo di più feed provenienti da diversi siti che mostri tutti gli articoli pubblicati nei vari blog.
Un commento a un mio post sui sottodomini che si possono creare con Blogger ha stimolato la mia creatività. Mi si chiedeva se fosse possibile reindirizzare i feed di tutti i sottodomini al Feed Principale del blog. Sul momento ho pensato all'utilizzo di IFTTT ma mi sono subito reso conto che la cosa non era al momento fattibile. La possibilità della unificazione di due o più feed in uno soltanto può avere diverse applicazioni pratiche che vanno oltre a questa specifica richiesta.

Poniamo che si abbiano più siti che trattano più o meno dello stesso tema. Potrebbe essere utile fornire agli utenti un Feed con un URL che contenga i link ai post pubblicati in tutti questi blog. Si può anche generare un feed unico che raccolga i singoli feed di siti che trattano un dato tema in modo da non perdere nessun post. Penso ai prestigiosi portali di notizie politiche, sportive o di altre tematiche. Tale feed complessivo potrebbe poi essere ripubblicato in un account Twitter mediante Hootsuite o IFTTT e magari mettere il widget di Twitter in un nostro sito.

La questione si risolve utilizzando Yahoo Pipes, un servizio che mi è stato utile per creare il widget dei Top Commentatori, il gadget degli Articoli più Commentati e il Menù Verticale con tutti i titoli dei post. Per poter usare questo tool bisogna avere un account Yahoo. Se non si possiede basta andare su Registrati e inserire username e password. Dopo essere entrati su Yahoo Pipes con il nostro account occorre andare su Create a Pipe.

I Pipe di Yahoo permettono di fare dei mash-up con dati di diverso tipo per poi ottenere dei feed che possono poi essere utilizzati secondo le nostre esigenze. Per approfondire questo argomento si può leggere il Tutorial di LifeHacker che pur essendo stato pubblicato molti anni fa propone una recensione efficace dello strumento. I feed di uscita possono essere ottenuti in vari formati tra cui RSS, JSON e KML. Vi linko anche un video di Youtube che illustra visivamente il funzionamento degli Yahoo Pipes. Sulla colonna di sinistra ci sono vari moduli che debbono essere trascinati con il drag & drop nell'area di lavoro per poi essere configurati e collegati.

Dopo aver cliccato su Create a pipe si trascina al centro il modulo Fetch Feed che si trova nella sezione Sources. Nel campo del modulo si incolla l'URL del primo feed da unificare

url-feed-yahoo-pipes

Cliccando sul bottone +URL possiamo aggiungere tutti gli altri URL dei feed da compattare in uno soltanto. Non so quale sia il limite ma, se si raggiungesse, si potrebbe sempre trascinare un altro modulo identico nell'area di lavoro. Quando abbiamo terminato si va nella sezione Operators e si trascina il modulo Sort sotto a quello appena configurato

modulo-sort-yahoo-pipes

In tale modulo nel primo campo selezioniamo item.pubDate come criterio di pubblicazione e come ordine scegliamo descending. In questo modo gli elementi più recenti saranno inseriti all'inizio. Sempre con il mouse si unisce il modulo Fetch Feed con Sort e quindi con Output che è presente di default. Il collegamento viene fatto attraverso i piccoli cerchi che stanno in alto e in basso ai moduli. Si vengono quindi a creare dei "Tubi" da cui presumo derivi il nome del tool.

collegamento-moduli-yahoo-pipes

Nel mio test ho inserito solo due feed ma come detto sopra se ne possono mettere molti di più. La realizzazione finale dovrebbe essere simile a questa

pipe-yahoo-feed

Si fa doppio click su Untitled e si digita il nome che si vuol dare al Pipe. Non resta che andare sulla destra e cliccare su Save quindi su Back My Pipes.

salvare-pipes-yahoo 

Si aprirà la pagina di tutti i Pipe che abbiamo creato. Dobbiamo cliccare su quello appena realizzato

pipe-yahoo-feed[5]

Si visualizzerà l'elenco di tutti gli elementi del feed che comprenderanno i post di tutti gli URL dei feed che abbiamo unificato e che saranno in ordine decrescente rispetto alla data vale a dire all'inizio si vedranno i più recenti. Non resta quindi che ottenere un URL da poter mettere come collegamento a una icona o per usarlo come meglio si crede. Nella barra orizzontale ci sono varie opzioni quali Get a RSS, Get a JSON, Get as PHP e altri ancora.

get-url-rss-pipe

Se clicchiamo con il destro del cursore su Get a RSS e poi andiamo su Copia indirizzo link, otterremo un URL simile a questo

http://pipes.yahoo.com/pipes/pipe.run?_id=2fa7dc496845e2e02a61289c13352c00&_render=rss

che non è altro che l'URL dei feed unificati. Tale URL può essere inserito così com'è collegato a un testo o a una pagina. La parte finale colorata di rosso mostrerà a chi lo apre la pagina per sottoscrivere il feed con Google Reader o con altri lettori. Tale parte può però anche essere tolta.

Se volete testare l'effettivo funzionamento del Pipe che ho realizzato potete incollare nel browser l'indirizzo precedente e verificare che mostra gli Ultimi Articoli di questi miei due blog di prova

http://design-prova.blogspot.com
http://nuovo-blog-di-prova.blogspot.com

Usando IFTTT si possono anche creare delle Recipes per postare gli articoli su Twitter o su un altri social

ifttt-pipes-yahoo

Dopo aver creato la Ricetta che vedete nello screenshot sono andato su Check Now che mi ha restituito il risultato Recipe checked e che ne testimonia il suo corretto funzionamento.




2 commenti :

  1. Ho usato anch'io questa funzione di Yahoo Pipes in passato.

    Volendo essere più raffinati, si può usare Feedburner per "accorciare" l'indirizzo chilometrico del feed RSS.

    RispondiElimina
    Risposte
    1. @ Si può anche accorciare con uno dei servizi tipo bit.ly. goo.gl, ecc Il punto è che è difficile inserire tale URL nei widget :P

      Elimina

Non inserire link cliccabili altrimenti il commento verrà eliminato. Metti la spunta a Inviami notifiche per essere avvertito via email di nuovi commenti. Se ti ho aiutato con il post o con le risposte ai commenti condividi su Facebook o su Twitter. Grazie.