Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

21
Leggere il grafo sociale in Facebook per conoscere i dati personali Roberto Marmo Università di Pavia, Facoltà di Ingegneria www.robertomarmo.net [email protected] https://www.facebook.com/roberto.marmo http://it.linkedin.com/in/robertomarmo

description

Presentazione al Festival ICT 2013 in Milano. Leggere i dati del profilo personale in Facebook, usando interfaccia grafica in https://developers.facebook.com/tools/explorer per leggere il grafo sociale tramite Graph API.

Transcript of Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Page 1: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Leggere il grafo sociale in Facebook per conoscere i dati personali

Roberto MarmoUniversità di Pavia, Facoltà di Ingegneria

[email protected]

https://www.facebook.com/roberto.marmohttp://it.linkedin.com/in/robertomarmo

Page 2: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 2

Grafo sociale secondo Facebook

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 2

‐Nodi (cerchi): profilo personale, pagina fan, foto, tutto!‐relazioni tra i nodi (linea retta): per collegare nodi che hanno qualcosa in comune, per navigare creando un percorso nel grafo per cercare informazioni

Page 3: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 3

Conoscere quali sono i dati personali• per ricordarsi cosa è stato pubblicato• capire cosa altro si può pubblicare• capire cosa viene condiviso• conoscere chi e cosa sta intorno a noi nel network• si può ricavare valore dai dati esistenti?

• conoscere Graph API per accedere ai dati• https://developers.facebook.com/docs/reference/api/field_expansion/

• sono dati che le persone hanno deciso di pubblicare• non portare dati fuori da Facebook, non sarebbero aggiornati e si 

rischiano violazioni a legislazione privacy https://www.facebook.com/about/privacy/

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 3

Page 4: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 4

Il codice identificativo in Facebook• ogni informazione è individuata da un numero

• importante conoscerlo in caso di problemi

• entrare in Facebook, nel browser (non usare Internet Explorer) scrivere nella barra indirizzi questo testo:

https://graph.facebook.com/zuck il  fondatore 

{ "id": "4", "name": "Mark Zuckerberg", "first_name": "Mark", "last_name": "Zuckerberg", "link": 

"http://www.facebook.com/zuck", "username": "zuck", "gender": "male", "locale": "en_US" }          testo in 

formato JSON che si può copiare in un file

• Notare il campo id con il numero identificativo 4, a ogni persona in Facebook è associato un numero id

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 4

Page 5: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 5

Il codice identificativo in Facebook• scrivere nella barra indirizzi del browser http://graph.facebook.com/nominativo  del profilo personale, cambiare con i propri riferimenti

• per trovare il proprio nominativo usato in Facebook portare il mouse in alto a destra sopra al nominativo, in basso a sinistra  viene scritto l’indirizzo www.facebook.com seguito dal nominativo, si può anche fare clic tasto destro del mouse, clic su CopiaIndirizzo (o altro tipo di scelta simile), incollare il testo in un file per leggerlo

• http://graph.facebook.com/vendere.social.commerce esempio di pagina fan di un libro, notare tutte le descrizioni che finiscono nei motori di ricerca

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 5

Page 6: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 6

https://developers.facebook.com/tools/explorer

• Entrare in Facebook e usare questo indirizzo• Ambiente di esplorazione dei dati nel grafo sociale

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 6

1

2

3

5

67

8

4

Page 7: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 7

Legenda slide ambiente esplorazione

1 – cliccare per cambiare la lingua dell’interfaccia

2 – scegliere di interrogare il grafo sociale con GRAPH API o il database con FQL Facebook Query Language

3 – si possono leggere dati senza modificarli usando GET oppure modificarli usando POST o DELETE

4 – ottenere un access token, un gettone di ingresso per accesso sicuro a Graph API https://developers.facebook.com/docs/facebook‐login/access‐tokens/

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 7

Page 8: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 8

Legenda slide ambiente esplorazione4 – dopo clic su Get Access Token compare una finestra in cui chiedere i permessi, divisi in tre gruppi  per accedere ai dati, cliccare sui quadretti e in fondo

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 8

Page 9: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 9

Legenda slide ambiente esplorazione

4 ‐ informazioni sugli amici

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 9

Page 10: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 10

Legenda slide ambiente esplorazione

4 –informazioni estese

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 10

Page 11: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 11

4 – Facebook richiede di cliccare sulla conferma di accesso ai dati da parte dell’applicazione

In basso a sinistra link verso la normativa sulla privacy https://www.facebook.com/legal/terms e http://www.facebook.com/privacy/explanation.php

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 11

Page 12: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 12

Legenda slide ambiente esplorazione5 ‐ cliccare per scegliere i campi da ottenere «field» riguarda il contenuto del nodo«connections» riguarda le relazioni tra nodi

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 12

5 ‐ Cliccare sui + sotto al quadrato per scegliere dettagli relativi all’informazione a destra del quadrato

Page 13: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 13

Legenda slide ambiente esplorazione

6 – cliccare su Submit per chiedere i dati

7 – stringa complessiva con cui viene costruita l’interrogazione, si può anche scrivere direttamente dentro cosa si vuole ottenere

8 ‐ risultato della interrogazione come testo in formato JSON, si può selezionare tutto e copiarlo in un editor come il Blocco Note in Windows e salvarlo come file

cliccare su frecce <‐ e ‐> nella colonna a sinistra per navigare tra pagine con tanti dati

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 13

Page 14: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 14

Esempio – pagine su cui cliccato MiPiace"id": "144015", "name": "Farg Fa", "likes": {"data": [{"category": "Travel/leisure", "category_list": [{"id": "1629136", "name": "Travel Agency"}], "name": "Personal shopper", "id": "3023350"}, {"category": "Food/beverages", "name": "Yonkmo", "id": "447904"}, 

Clic permesso user_like in (4) area User Data Permissions, in (5)in  elenco connections clic su likes, clic sul quadrato sotto likes per scegliere i campi

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 14

Page 15: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 15

Esempio – recupero messaggi in chat{  "id": "1440515",   "name": "Farg Far",

"inbox": {

"data": [

{ "id": "205633",  "to": {"data": [{ "name": " Farg Far ",  "id": " 1440515 "}, { "name": "Simone ",   "id": "14728"} ] }, 

"updated_time": "2011‐08‐01T19:28:32+0000",  "unread": 0,  "unseen": 0,  "comments": {

"data": [{ "id": "20211_1", "from": { "name": "Simone ",  "id": " 14728 "}, "message": "Dovresti nominare anche Paolo ",  "created_time": "2011‐08‐

01T19:28:32+0000"} } }

Clic su read_mailbox in (4) area Extended Permission, in (5) elenco connections clic su inbox, clic sul quadrato sotto per scegliere i campi

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 15

Page 16: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 16

Esempio – elenco amici: compleanno, interessi{  "id": "1440515",

"name": "Farg Far",

"friends": {

"data": [

{     "birthday": "07/1/1987",        "name": "Gino  Felzi",        "id": "576",

"interests": {

"data": [

{ "category": "Interest",              "name": «treno antico locomotiva a vapore",

"created_time": "2012‐12‐04T20:56:44+0000",      "id": "1121"

}    }      }

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 16

testo in (7) 1440515?fields=id,name,friends.fields(birthday,name,interests)

In(4) area UserDataPermissions clic su user_friends, area FriendDataPermissions clic su friends_interests, friends_birthdayideale per sapere cosa regalare per il compleanno dell’amico

composizione dei quadrati in (5) per comporre la richiesta

Page 17: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 17

Pagine fan preferite dai miei amici

Clic su friends_likes in (4) area Extended Permission, in (5) elenco connections clic su friends e poi clic su likes, clic sul quadrato sotto per scegliere i campi nell’area field per avere i campi mostrati a sinistraideale per conoscere meglio quali sono le pagine preferite degli amici

Page 18: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 18

Gruppi cui appartengono miei amici

Clic su friends_group in (4) area Extended Permission, in (5) elenco connections clic su friends e poi clic su groups, clic sul quadrato sotto per scegliere i campi nell’area field per avere i campi mostrati a sinistra

Page 19: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 19

Elenco iscritti gruppo che ho creato

• usare Facebook Query Language per leggere dal database, piùcomplicato ma più ricco di informazioni https://developers.facebook.com/docs/reference/fql/

Page 20: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 20

Conclusioni

• il funzionamento di Facebook si basa su una grande quantità di informazioni sulle persone, con i vantaggi di creare maggiore interazione tra le persone e offrire opportunità di creare business, ma con lo svantaggio del creare problemi di privacy

• alcune informazioni possono essere lette tramite la classica interfaccia grafica, oppure con strumenti per leggere Graph API e creazione di applicazioni

• prestare attenzione alla gestione dei dati personali, a chi si offre amicizia, all’iscrizione nei gruppi

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 20

Page 21: Festival ICT 2013 Leggere dati dal profilo personale Facebook con Graph API

Festival ICT 18 settembre 2013 –Roberto Marmo ‐ Leggere dati personali in Facebook 21

Due libri per approfondire

GRAZIE PER L’ATTENZIONE!http://www.robertomarmo.net/Libri.html