Slide 1

Slide 1 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Harvest Web Data Martino Pizzol Fondazione ahref 28 agosto 2010 Martino Pizzol Harvest Web Data

Slide 2

Slide 2 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Indice 1 I dati sul web 2 Prima di partire 3 Alla ricerca di informazioni 4 Utilizziamo le API 5 Esercitazione Martino Pizzol Harvest Web Data

Slide 3

Slide 3 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Cosa e come Scopo Utilizzare dei dati trovati nella rete Come Bisogna trovarli Controllare le licenze Recuperarli per poterli usare Martino Pizzol Harvest Web Data

Slide 4

Slide 4 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Formato Dati Cos’` e? Il formato dati ` e la convenzione che viene utilizzata per leggere, scrivere e interpretare i contenuti di un file (da Wikipedia) Esistono due grandi famiglie di formati Formati aperti (RTF, PDF, ODT, ODT...) Formati proprietari (DOC, DOCX, XLS, PPT...) Martino Pizzol Harvest Web Data

Slide 5

Slide 5 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione HTML Cos’` e? L’HTML (HyperText Markup Language) ` e il linguaggio utilizzato per creare le pagine web. Permette di creare documenti con una struttura semplice, testo, immagini, oggetti interattivi e collegamenti ipertestuali ad altre pagine. Pagina di pippo In questa pagina di Pippo Martino Pizzol Harvest Web Data

Slide 6

Slide 6 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione XML Cos’` e? XML (Extensible Markup Language) ` e un meta-linguaggio di markup, progettato per lo scambio e la interusabilit` a di documenti strutturati su Internet. Guida galattica per autostoppisti Douglas Adams Martino Pizzol Harvest Web Data

Slide 7

Slide 7 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione JSON Cos’` e? JSON (JavaScript Object Notation) ` e un formato adatto per lo scambio dati tra applicazioni. Il suo grande punto di forza ` e la semplicit` a. { "titolo": "Guida galattica per autostoppisti", "autore": "Douglas Adams", "ristampe": [ {"anno": "1990"}, {"anno": "1994"}, ] } Martino Pizzol Harvest Web Data

Slide 8

Slide 8 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione CSV Cos’` e? CSV (Comma-Separated Values) ` e un formato dati basato su file di testo per lo scambio di una tabella dati Titolo,Autore,Prima edizione Guida galattica per autostoppisti,Douglas Adam,1979 Ristorante al termine dell’Universo,Douglas Adam,1980 Martino Pizzol Harvest Web Data

Slide 9

Slide 9 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Metodi tradizionali Problema Ho un sito ricco di informazioni che mi interessano, come posso fare per recuperarle? Martino Pizzol Harvest Web Data

Slide 10

Slide 10 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Metodi tradizionali Problema Ho un sito ricco di informazioni che mi interessano, come posso fare per recuperarle? Posso raccogliere le informazioni in ogni pagina scrivere un programma che lo fa al posto mio Martino Pizzol Harvest Web Data

Slide 11

Slide 11 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Web Scraper Web Scraper ` E un software che in maniera automatizzata recupera informazioni. Newstrust Ho trovato un sito molto interessante, Newstrust ho visto che gli utenti possono creare delle recensioni per gli articoli e sono interessato ad analizzare l’andamento dei voti, come posso fare? http://newstrust.net/ Martino Pizzol Harvest Web Data

Slide 12

Slide 12 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Web Scraper Creiamo un web scraper Controllo di poter raccogliere i dati che mi interessano senza infrangere nessun termine d’utilizzo http://newstrust.net/members/new Studio la struttura del sito Analizzo la pagina che mi interessa (xpath) Scrivo uno scraper Martino Pizzol Harvest Web Data

Slide 13

Slide 13 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Web Scraper Perch` e non ci vanno bene i scraper ` e molto complesso crearne uno hanno bisogno di manutenzione i siti evolvono sempre alcuni siti con interfacce ricche non si possono analizzare in questo modo (es: Flash) Martino Pizzol Harvest Web Data

Slide 14

Slide 14 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Le API Cosa sono? http://www.flickr.com/photos/uhuru1701/2248426467/ Martino Pizzol Harvest Web Data

Slide 15

Slide 15 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Le API Cosa sono? http://www.flickr.com/photos/picdrop/11155051/ Martino Pizzol Harvest Web Data

Slide 16

Slide 16 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Le API Cosa sono? Una API(Application Programming Interface) ` e un insieme di codice e specifiche che i software utilizzano per comunicare tra loro. Martino Pizzol Harvest Web Data

Slide 17

Slide 17 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione WebAPI Le WebAPI sono lo strumento offerto dai siti per di permettere l’accesso diretto alle informazioni a terzi. Sono lo strumento utilizzato da ogni sito per condividere le informazioni in modo che altri possano utilizzarle Martino Pizzol Harvest Web Data

Slide 18

Slide 18 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione WebAPI Martino Pizzol Harvest Web Data

Slide 19

Slide 19 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione WebAPI Martino Pizzol Harvest Web Data

Slide 20

Slide 20 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione WebAPI Esempi d’utilizzo Pubblico delle foto su Flickr e voglio importarle nel mio account Facebook Posso integrare nel mio sito una mappa personalizzata presente su Google Maps Nel sito di un giornale posso visualizzare tutti i video di un canale Youtube Su un sito qualsiasi posso fare il login utilizzando quello di Google Martino Pizzol Harvest Web Data

Slide 21

Slide 21 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione API 101 Come possiamo utilizzare un API? Dobbiamo controllare che effettivamente le informazioni che ci servono siano accessibili tramite API Non sempre questo servizio ` e gratuito Solitamente bisogna registrarsi per ottenere una chiave d’utilizzo Possiamo finalmente ottenere le informazioni desiderate Martino Pizzol Harvest Web Data

Slide 22

Slide 22 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Flickr Flickr ` e un sito molto famoso per la condivisione di fotografie. Tutti i contenuti sono accessibili tramite un’API molto ricca. Qualsiasi operazione che si pu` o compiere sul sito la possiamo fare in un’applicazione di terze parti grazie alle API. In questo caso la chiave per l’utilizzo ` e diversa nel caso di utilizzi commerciali Martino Pizzol Harvest Web Data

Slide 23

Slide 23 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Flickr API - 101 1 Iniziamo a creare l’API http://www.flickr.com/services/developer/api/ 2 Creiamo la chiave d’utilizzo http: //www.flickr.com/services/apps/create/apply/ 3 Leggiamo la documentazione http://www.flickr.com/services/api/ 4 Analizziamo come si cercano le fotografie http://www.flickr.com/services/api/flickr. photos.search.html Martino Pizzol Harvest Web Data

Slide 24

Slide 24 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Flickr API - 101 flickr.photos.search Return a list of photos matching some criteria. Only photos visible to the calling user will be returned. To return private or semi-private photos, the caller must be authenticated with ’read’ permissions, and have permission to view the photos. Unauthenticated calls will only return public photos. Martino Pizzol Harvest Web Data

Slide 25

Slide 25 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Flick API - 101 Richiesta Richiesta Nella richiesta specifichiamo i parametri della funzione Martino Pizzol Harvest Web Data

Slide 26

Slide 26 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Risposta Martino Pizzol Harvest Web Data

Slide 27

Slide 27 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Risposta Risposta XML ... Martino Pizzol Harvest Web Data

Slide 28

Slide 28 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Flickr API - Esempi Tippermap Geolocalizzazione del proprio streamhttp://www.trippermap.com/ Martino Pizzol Harvest Web Data

Slide 29

Slide 29 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Flickr API - Esempi Flickrstr - The weekly flickr Top 20 http://flickstr.basementserver.com/ Do fun stuff with your photos http://bighugelabs.com/ Visualizzazione alternativa a flickr http://www.flickriver.com/ Explore di flickr http://www.fluidr.com/ Martino Pizzol Harvest Web Data

Slide 30

Slide 30 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Youtube Youtube ` e un sito molto famoso per la condivisione di video. Le sue api permettono di integrare il player in siti esterni ricercare video caricare video http://code.google.com/intl/it-IT/apis/youtube/ getting_started.html Martino Pizzol Harvest Web Data

Slide 31

Slide 31 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Youtube API - Esempi Visual travel guide http://www.funtouristattractions.com/ Ricerca alternativa su youtube http://www.yvoschaap.com/youtube/ Ricerca in 3d http: //www.airtightinteractive.com/demos/youtube/ Martino Pizzol Harvest Web Data

Slide 32

Slide 32 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Twitter Twitter ` e un network di informazione dove vengono prodotti circa 200 milioni di tweet al giorno. Tramite le API possiamo: integrare twitter nel nostro sito (es: tweet button) ricercare tweet nella piattaforma in real-time informazioni sull’utente (stato, avatar, etc etc) Martino Pizzol Harvest Web Data

Slide 33

Slide 33 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Twitter API - Esempi http://wavu.ahref.eu https://dev.twitter.com/console Martino Pizzol Harvest Web Data

Slide 34

Slide 34 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Worldbank La World Bank ` e un’istituzione creata per lottare contro la povert` a ed organizzare aiuti ai paesi in difficolt` a. Tramite le API sono messi a disposizioni tre diversi dataset 1 Indicatori temporali 2 Progetti della Word Bank 3 Dati finanziari http://data.worldbank.org/developers Martino Pizzol Harvest Web Data

Slide 35

Slide 35 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Worldbank API - Esempi Explore project api http://api.worldbank.org/api/projects Kenya OpenData http://opendata.go.ke/ Visualizzazioni Google http://www.google.com/ publicdata/overview?ds=d5bncppjof8f9_ Visualizzazioni dei dati della world bank su una mappa http://www.geo.me/worldbank Martino Pizzol Harvest Web Data

Slide 36

Slide 36 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Freebase Freebase ` e un enorme database con 22 milioni di entit` a rilasciato con licenza Creative Commons. I dati possono essere scaricati interamente, oppure si possono utilizzare tramite l’API. http://wiki.freebase.com/wiki/Developers Martino Pizzol Harvest Web Data

Slide 37

Slide 37 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione NYTimes Il New York Times ` e un quotidiano pubblicato negli Stati Uniti. Il suo sito ha circa 31 milioni di visitatori unici, in Italia ogni mese vengono visualizzate 3,8 milioni di pagine. (da Wikipedia) Le sue API permettono di accedere a tantissime informazioni: Articoli Best Sellers Dati del congresso (i voti..) Most Popular (metadati per i blog e articoli pi` u visitati..) ... http://developer.nytimes.com/ Martino Pizzol Harvest Web Data

Slide 38

Slide 38 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione NYTimes API - Esempi Test NY API http: //prototype.nytimes.com/gst/apitool/index.html Esempi di utilizzo dei dati del congresso http://developer.nytimes.com/docs/read/ congress_api/congress_api_examples Visualizzatore dei tweet che includono articoli del NY http://tinyurl.com/4lal28a Martino Pizzol Harvest Web Data

Slide 39

Slide 39 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione The Guardian Open Platform La Open Platform ` e un insieme di servizi che permettono la collaborazione di terzi con il Guardian. In particolare abbiamo a disposizione quattro grandi dataset Content API (per i contenuti del guardian) Data Store (dataset curati dai giornalisti) Politics API (informazioni relative ai candidati, voti..) http://www.guardian.co.uk/open-platform Martino Pizzol Harvest Web Data

Slide 40

Slide 40 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione The Guardian Open Platform - Esempi Test API http://explorer.content.guardianapis.com/ Enjoy England http://www.guardian.co.uk/enjoy-england Martino Pizzol Harvest Web Data

Slide 41

Slide 41 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Ma come posso fare? Sviluppare del software che utilizzi le API Utilizzare servizi online per l’analisi dei dati Martino Pizzol Harvest Web Data

Slide 42

Slide 42 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Yahoo PIPES Yahoo PIPES ` E un sito web che ci permette di aggregare e manipolare i dati provenienti da vari servizi web. http://pipes.yahoo.com/pipes/ Esempi The Bigger Picture http://tinyurl.com/6dl9bw7 YouTunes 2.0 http://tinyurl.com/5wx64jy Find job http://tinyurl.com/6dxdxv4 Martino Pizzol Harvest Web Data

Slide 43

Slide 43 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Yahoo PIPES Demo Vediamo ora come poter utilizzare Yahoo PIPES per aggregare delle notizie Martino Pizzol Harvest Web Data

Slide 44

Slide 44 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Yahoo PIPES Martino Pizzol Harvest Web Data

Slide 45

Slide 45 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Conclusioni Il web ` e una fonte immensa di dati Spesso i vari siti ci permettono il loro utilizzo Le API sono il nostro alleato fondamentale Le moderne applicazioni utilizzano spesso altri servizi (mashup) Martino Pizzol Harvest Web Data

Slide 46

Slide 46 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Esercitazione Proviamo ora ad utilizzare Yahoo PIPES Flavon on Flickr Vogliamo ottenere da Flickr una lista di immagini scattate vicino a Flavon Hint Provare ad utilizzare il widget di Flickr Martino Pizzol Harvest Web Data

Slide 47

Slide 47 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Esercitazione Martino Pizzol Harvest Web Data

Slide 48

Slide 48 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Esercitazione Martino Pizzol Harvest Web Data

Slide 49

Slide 49 text

Harvest Web Data Martino Pizzol Indice I dati sul web Prima di partire Alla ricerca di informazioni Utilizziamo le API Esercitazione Domande Domande? Martino Pizzol Harvest Web Data