-
Notifications
You must be signed in to change notification settings - Fork 11
Basic Twitter stream reading using Twitter4j
qtips edited this page Jan 23, 2014
·
8 revisions
- Authentication:
ConfigurationBuilder configurationBuilder = new ConfigurationBuilder();
configurationBuilder.setOAuthConsumerKey(_consumerKey)
.setOAuthConsumerSecret(_consumerSecret)
.setOAuthAccessToken(_accessToken)
.setOAuthAccessTokenSecret(_accessTokenSecret);- Initiate twitter stream using authentication
TwitterStream twitterStream = new TwitterStreamFactory(configurationBuilder.build()).getInstance();- Add listener the stream reader
twitterStream.addListener(new StatusListener () {
public void onStatus(Status status) {
System.out.println(status.getText()) // print tweet text to console
}
....- Create a filter for tweets containing "Bieber" or "Teletubbies" tweeted from USA in english, and add it to the stream reader. Look here for latitude/longitude values
FilterQuery tweetFilterQuery = new FilterQuery(); // See
tweetFilterQuery.track(new String[]{"Bieber", "Teletubbies"}); // OR on keywords
tweetFilterQuery.locations(new double[][]{new double[]{-126.562500,30.448674},
new double[]{-61.171875,44.087585
}}); // See https://dev.twitter.com/docs/streaming-apis/parameters#locations for proper location doc.
//Note that not all tweets have location metadata set.
tweetFilterQuery.language(new String[]{"en"}); // Note that language does not work properly on Norwegian tweets - Start listening to tweets using our filter!
twitterStream.filter(tweetFilterQuery);