2011-11-07 15 views
5

Sto utilizzando la libreria "Twitter4j" e mi chiedo se è possibile restituire tweet in una posizione E contenere una determinata parola chiave. Noto che nella documentazione ufficiale di Twitter menziona questo:Streaming Twitter - posizione E parole chiave

Le caselle di delimitazione sono OR logici. Un parametro location può essere combinato con i parametri track, ma si noti che tutti i termini sono logicamente ORD, quindi la stringa stringa track = twitter & amp; locations = -122.75,36.8, -121.75,37.8 corrisponderebbe a qualsiasi tweet contenente il termine Twitter (anche tweet non geografici) O proveniente dalla zona di San Francisco.

Che è sfortunato in quanto non è quello che mi serve, sta tornando troppi tweets. Qualche idea su come potrei aggirare questo o c'è qualcosa che mi manca nella biblioteca che potrebbe permettermi di farlo?

javadoc libreria: http://twitter4j.org/en/javadoc/twitter4j/FilterQuery.html#locations

Al momento ho il mio codice di filtro come questo twitter.filter(new FilterQuery().locations(sydney).track(keywords));

e hanno anche provato ciascuno su una propria linea: twitter.filter(new FilterQuery().locations(sydney).track(keywords));

twitter.filter(new FilterQuery().track(keywords));

risposta

1

Purtroppo , stai leggendo i documenti correttamente. Non so abbastanza su twitter4j per dire se c'è un metodo contenuto da qualche parte che gestirà questo per te più facilmente, ma puoi sempre usare solo un semplice confronto tra stringhe per vedere se i tuoi termini di ricerca sono inclusi nel tweet.

+0

Grazie per la risposta, questo è in realtà ciò che ho finito per fare :) – ponens

0

Non una risposta, ma una soluzione semplice:

So che la maggior parte delle persone non hanno abilitato GPS quando cinguettano e gli altri non vorrebbero condividere la loro posizione!

Ma stanno ancora condividendo la loro posizione !! Indovina come? Sui loro profili! La loro città natale, il loro paese è in gran parte visibile, che può darti una approssimativa di posizione da cui proviene il tweet! È possibile eseguire una query per il profilo dell'utente e quindi la sua/la sua posizione utilizzando l'API REST

twitter.showUser(userScreenName).getLocation();

Cerca tutte le parole chiave, se la posizione si wan't non corrisponde, semplicemente scartare! In questo modo, è possibile ottenere più numero di tweet almeno