Tag Archives: twitter

Big Data: esempio di codice Java per estrarre tweets da Twitter

Nell’ambito dei Big Data, le aziende investono milioni per estrarre più informazioni possibili da internet, e in particolare dai social network.

Al contrario di Facebook, dove le informazioni sono protette dal livello di privacy impostato dagli utenti, quasi tutti gli account di twitter sono liberi e accessibili da chiunque. La realtà dei fatti è che ogni vostro tweet è catturato da qualcuno e viene rivenduto per trarne profitto. Trarne profitto come? Analisi di mercato, statistiche e tanta altra roba che per le aziende è oro.

BigData - estrazione tweets da twitterImmaginiamo ad esempio che la Ferrero voglia analizzare il livello di gradimento di uno dei suoi prodotti, ad esempio la Nutella che tutti conosciamo. Attraverso l’estrazione dei tweets con alcune parole chiave ben studiate e l’analisi di questi dati (cosa tutt’altro che semplice), la Ferrero o chi per lei, riesce ad ottenere il feedback di gradimento del prodotto da parte degli utenti, oppure nello specifico, per cosa viene principalmente usata (spalmata sul pane, preparare torte, etc…). Sono infiniti i benefici che si possono trarre dai Big Data, e chi lavora in questo settore solitamente viene pagato fior di quattrini.

Il problema di lavorare con questo tipo di dati, è la mole di informazioni che si riescono a catturare, in quanto col passare del tempo le informazioni salgono in modo esponenziale e il vostro pc casalingo non riuscirebbe mai a gestire il lavoro in entrata (sia per quanto riguarda la potenza di calcolo (cpu), sia per lo storage di dati (che raggiunge anche petabyte ogni settimana), sia per la velocità di connessione alla rete).

Ad ogni modo, se ci si limita ai soli tweets, Twitter offre delle API REST, che attraverso delle chiamate JSON restituisce tutti i tweets con la query richiesta. Nell’esempio di codice java che segue sotto, mi limiterò ad usare il Public Stream fornito da Twitter, ma sappi che ci sono altri modi di accedere ai tweets (in modo più limitato, e utili ad esempio qualora si volesse scrivere un client).

Attenzione: Twitter agli account “semplici” limita questo tipo di utilizzo, e permette di accedere solo all’1% dei tweets mondiali, che ad ogni modo è una quantità enorme di informazioni. Se cercate quindi di estrarre tutti i tweets con la parola “Android”, e questi sono più dell’1% sul totale, alcuni tweets li perderete. Il lavoro di estrazione dei tweets è possibile eseguirlo anche su un comune PC, non vi è bisogno di avere delle super macchine.

Per l’estrazione dei tweets uso la libreria java (non ufficiale) Twitter4J. Grazie a questa libreria posso integrare facilmente all’interno delle mie applicazioni Java i servizi offerti da Twitter. La libreria è 100% codice java, e lavora con ogni versione superiore alla 5. Il framework lavora correttamente anche con la piattaforma Android e il Google App Engine.

Nel codice che vedi di seguito, ho utilizzato delle dipendenze Maven per importare la libreria Twitter4J. Se interessato, gli snippet sono i seguenti:


<dependency>
 <groupId>org.twitter4j</groupId>
 <artifactId>twitter4j-core</artifactId>
 <version>3.0.3</version>
 </dependency>

 <dependency>
 <groupId>org.twitter4j</groupId>
 <artifactId>twitter4j-stream</artifactId>
 <version>3.0.3</version>
 </dependency>

Passiamo al codice Java vero e proprio, abbastanza semplice da comprendere. Per ulteriori info su alcune classi utilizzate, fai riferimento alla documentazione.


//© Paolo Musolino - http://www.codeido.com
public class App
{
 public static void main( String[] args )
 {
 //ESTRAZIONE DEI TWEETS

 System.out.println( "www.codeido.com" );

 StatusListener listener = new StatusListener(){

 public void onStatus(Status status) {

 System.out.println(status.getUser().getName() + " : " + status.getText());

 }
 public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) {}
 public void onTrackLimitationNotice(int numberOfLimitedStatuses) {
 // System.out.print(numberOfLimitedStatuses+"\n"); //stampa il numero di tweets che vengono persi
 }
 public void onException(Exception ex) {
 ex.printStackTrace();
 }

public void onScrubGeo(long l, long l1) {
 throw new UnsupportedOperationException("Not supported yet.");
 }

public void onStallWarning(StallWarning sw) {
 throw new UnsupportedOperationException("Not supported yet.");
 }
 };
 ConfigurationBuilder cb = new ConfigurationBuilder();
 cb.setUser("vostro_username_twitter");
 cb.setPassword("vostra_password_account_twitter");

 TwitterStream twitterStream = new TwitterStreamFactory(cb.build()).getInstance();
 twitterStream.addListener(listener);
 FilterQuery filtro=new FilterQuery();
 String[] arrayQuery={"codeido", "big data", "bigdata"}; //stringhe che verranno cercare all'interno dei tweets.
 filtro.track(paroleChiave);
 twitterStream.filter(filtro);

 }
}
 }

Fanne buon uso e ricordati di condividere questo articolo.

Alla prossima.

Paolo

Nyan twit: io ti twitto a te tu mi twuitti a me, ti ritwitto a te mi retwitti a me.

Sulle “note” del famosissimo Nyan Cat (una sorta di cantilena infinita), i Revenex Quote, satiri napoletani, hanno realizzato un omaggio al famoso social network Twitter chiamandolo “nyan twit”, sfornando un divertente jingle ipnotico, ideale da twittare ai proprio followers!

Ok, ora vado, io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me io ti twitto a te tu mi twuitti a me.

Chi smette di seguirti su twitter? Quitter te lo dice.

Oggi ho scoperto un utile servizio costruito attorno a Twitter, QUITTER. In sostanza è molto semplice, ti permette di seguire durante tutta la settimana chi ha deciso di unfollowarti (unfollowers). Settimanalmente viene inviato un resoconto via email all’indirizzo da te specificato. Inoltre è implementata una funzione che riconosce gli spammers e gli spam bots, che solitamente sono coloro che si mascherano dietro avatar con belle ragazze bionde. Una volta che ti registri al servizio, basta inserire l’username Twitter e l’indirizzo email, nulla di più. L’unica limitazione è che nella versione free, se possedete più account non potete inserirli tutti. La cosa si può eludere utilizzando una diversa email di registrazione. Utile.

 

Twitter Tips & Tricks a Messina #TTT05

Sabato 26 Maggio 2012 alle ore 18:30 si terrà il quinto appuntamento del Twitter Tips & Tricks, il corso e aperitivo social dedicato all’autoformazione avanzata e approfondimenti sull’uso di Twitter, a cui sarò presente in veste di organizzatore.

Per la prima volta l’evento si svolgerà in contemporanea in 5 città Italiane (Lecce, Roma, Torino, Bologna e Messina) e sarà realizzato da esperti di microblogging attraverso il Social Network Twitter.

All’evento possono partecipare tutti gli amanti e appassionati di Twitter, Smartphone dotati per poter twittare in real time durante la serata e sperimentare le funzioni di Twitter, condividere, partecipare e dialogare con tutti i partecipanti delle cinque città e gli utenti che seguiranno l’evento in Real Time utilizzando l’hastag ufficiale #TTT05.

Questa edizione del #TTT05 sarà dedicata al rapporto tra Twitter e i media tradizionali, in particolare con il medium televisivo.

L’integrazione tra Twitter e contenuti TV e radio si sta dimostrando un’evoluzione naturale per la maggioranza dei format, soprattutto quelli in diretta. Ed è proprio grazie alla programmazione live che i cinguettii iniziano a scalfire i muri difensivi della televisione e la radio italiana.

I social network, e in particolar modo Twitter, hanno già trasformato la televisione e il riferimento è sia all’apparecchio  televisivo,  che va decisamente verso uno schermo integrato con i social network a cui  si può accedere in contemporanea con la visione delle programmazione  televisiva, sia ai programmi il cui contenuto interagisce sempre più con piattaforme social che creano engagement e fanno discutere tra loro gli spettatori durante e dopo la messa in onda dei programmi .

In USA  è già stata coniata la definizione “social tv viewing”.

Gli ospiti del #TTT05 saranno:

Francesco Soro – @fsoro: Avvocato, è Presidente del CoReCom Lazio e del Coordinamento nazionale dei Corecom, già componente del Comitato Media e Minori, e fondatore di Next Tv.  Fino al 2008 è stato Consigliere per L’Innovazione del Ministro per gli Affari Regionali, membro di diverse Commissioni ministeriali, nonché Presidente del Consorzio ICT, società mista a maggioranza pubblica della Regione Lazio con Alenia Spazio, IRI management, Distretto dell’ICT e dell’Audiovisivo e TecnoPolo.

Marco Stancati– @marcostancati, Docente di “Comunicazione interna” e di “Pianificazione dei Media nelle strategie d’impresa ” alla Sapienza di Roma, è giornalista pubblicista e collabora con diversi periodici sui temi della Sicurezza e della Comunicazione;

Tweet Angels LOCALI e hastag Ufficiali:

I Tweet Angels sono gli organizzatori delle serate nelle diverse città. I Tweet Angels moderano la discussione sul tema e promuovono l’autoscambio di tweets tra i partecipanti.

I Tweet Angels si coordinano a livello nazionale con @miriamtorrente Per questioni logistiche ed organizzative.

#TTT05/Me (Messina)

@soniaMDahnhardt  @pmusolino (Libreria Doralice, ME)

Per potere partecipare all’evento è obbligatorio prenotare il posto prima del 23 Maggio da qui: http://ttt05me.eventbrite.com/