List of usage examples for twitter4j TwitterStreamFactory TwitterStreamFactory
public TwitterStreamFactory(String configTreePath)
From source file:tweetmining.MiningFunctions.java
/** * This method creates an instance of Miningfunctions based on your TwitterApss credentials. * You should as well check filepaths to put yours. * //from ww w .j a va 2 s. c o m * @throws FileNotFoundException */ public MiningFunctions() throws FileNotFoundException, IOException { ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.setDebugEnabled(true).setOAuthConsumerKey(ConsumerKey) .setOAuthConsumerSecret(ConsumerSecret).setOAuthAccessToken(AccessToken) .setOAuthAccessTokenSecret(AccessTokenSecret); tf = new TwitterFactory(configurationBuilder.build()); twitter = tf.getInstance(); File f = new File(fichero1); File f2 = new File(fichero2); File f3 = new File(fichero3); if (!f.exists()) f.createNewFile(); if (!f2.exists()) f2.createNewFile(); if (!f3.exists()) f3.createNewFile(); pw = new PrintWriter(new FileOutputStream(f, true)); pw2 = new PrintWriter(new FileOutputStream(f2, true)); pw3 = new PrintWriter(new FileOutputStream(f3, true)); listener = new StatusListener() { public void onStatus(Status status) { if (status.getGeoLocation() != null) { cont++; System.out.println("Loc not null----" + cont); GeoLocation loc = status.getGeoLocation(); pw.println(String.valueOf(loc.getLatitude()) + ";" + String.valueOf(loc.getLongitude()) + ";" + status.getUser().getName()); System.out.println( loc.getLatitude() + " " + loc.getLongitude() + " " + status.getUser().getName()); } pw2.println(status.getUser().getName() + "--->" + status.getText()); try { CloseWriteAndOpen(); } catch (FileNotFoundException ex) { java.util.logging.Logger.getLogger(MiningFunctions.class.getName()).log(Level.SEVERE, null, ex); } } public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) { } public void onTrackLimitationNotice(int numberOfLimitedStatuses) { } public void onException(Exception ex) { ex.printStackTrace(); } @Override public void onScrubGeo(long l, long l1) { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public void onStallWarning(StallWarning sw) { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } }; configurationBuilder = new ConfigurationBuilder(); configurationBuilder.setDebugEnabled(true).setOAuthConsumerKey(ConsumerKey) .setOAuthConsumerSecret(ConsumerSecret).setOAuthAccessToken(AccessToken) .setOAuthAccessTokenSecret(AccessTokenSecret); twitterStream = new TwitterStreamFactory(configurationBuilder.build()).getInstance(); }
From source file:Twitter.FilterStream.java
License:Apache License
public static void main(String[] args) throws TwitterException { System.getProperties().put("http.proxyHost", "127.0.0.1"); System.getProperties().put("http.proxyPort", "8580"); /* if (args.length < 1) { System.out.println("Usage: java twitter4j.examples.PrintFilterStream [follow(comma separated numerical user ids)] [track(comma separated filter terms)]"); System.exit(-1);/*from ww w . ja va 2 s.c o m*/ }*/ final FilterStream fs = new FilterStream(); try { fs.LinkMongodb(); } catch (Exception e) { e.printStackTrace(); } StatusListener listener = new StatusListener() { @Override public void onStatus(Status status) { System.out.println("@" + status.getUser().getScreenName() + " - " + status.getText()); String str = DataObjectFactory.getRawJSON(status); try { //JSONObject nnstr = new JSONObject(newstr); DBObject dbObject = (DBObject) JSON.parse(str); fs.collection.insert(dbObject); //System.out.println(dbObject); fs.count++; if (fs.count > 900000000) { fs.mongo.close(); System.exit(0); } } catch (Exception e) { e.printStackTrace(); } } @Override public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) { System.out.println("Got a status deletion notice id:" + statusDeletionNotice.getStatusId()); } @Override public void onTrackLimitationNotice(int numberOfLimitedStatuses) { System.out.println("Got track limitation notice:" + numberOfLimitedStatuses); } @Override public void onScrubGeo(long userId, long upToStatusId) { System.out.println("Got scrub_geo event userId:" + userId + " upToStatusId:" + upToStatusId); } @Override public void onStallWarning(StallWarning warning) { System.out.println("Got stall warning:" + warning); } @Override public void onException(Exception ex) { ex.printStackTrace(); } }; ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("7ZVgfKiOvBDcDFpytRWSA") .setOAuthConsumerSecret("JmeJVeym78arzmGthrDUshQyhkq6nWA9tWLUKxc") .setOAuthAccessToken("321341780-Zy7LptVYBZBVvAeQ5GFJ4aKFw8sdqhWBnvA3pDuO") .setOAuthAccessTokenSecret("foi8FnQCeN0J5cdwad05Q6d7dbytFayQn1ZOvmhF6Qc"); cb.setJSONStoreEnabled(true); TwitterStreamFactory tf = new TwitterStreamFactory(cb.build()); TwitterStream twitterStream = tf.getInstance(); twitterStream.addListener(listener); ArrayList<Long> follow = new ArrayList<Long>(); ArrayList<String> track = new ArrayList<String>(); //String[] keywords = {"RT @justinbieber"}; String[] keywords = { "27260086" }; // user_id(justinbieber) for (String arg : keywords) { if (isNumericalArgument(arg)) { for (String id : arg.split(",")) { follow.add(Long.parseLong(id)); } } else { track.addAll(Arrays.asList(arg.split(","))); } } long[] followArray = new long[follow.size()]; for (int i = 0; i < follow.size(); i++) { followArray[i] = follow.get(i); } String[] trackArray = track.toArray(new String[track.size()]); // filter() method internally creates a thread which manipulates TwitterStream and calls these adequate listener methods continuously. //twitterStream.filter(new FilterQuery(0, followArray, trackArray)); twitterStream.filter(new FilterQuery(followArray)); }
From source file:twitterapp.TwitterApp.java
public static void streamTweets() throws TwitterException { /*getting the trends */ ConfigurationBuilder cb2 = new ConfigurationBuilder(); cb2.setDebugEnabled(true).setOAuthConsumerKey("S01GsVwuCAwZFp5BLg5C4k8PT") .setOAuthConsumerSecret("6jo0jo4b05Ec5ZJcf74v5yGUQu5v8DryUwypOBjPD6jaItRNzd") .setOAuthAccessToken("794259549297446912-Z3AWruBmLa7QmCO6BnybCSj1tZXNqbB") .setOAuthAccessTokenSecret("6ezMQPQVziW9yxyTITZA8Wc2RJWjcBKvbXZU4dOjo4bge"); TwitterFactory tf = new TwitterFactory(cb2.build()); Twitter twitter = tf.getInstance();/*w ww .j a v a 2 s . c om*/ Trends trends = twitter.getPlaceTrends(23424977); String top_trend = ""; int top = 0; for (Trend trend : trends.getTrends()) { if (top < 1) { top_trend = trend.getName(); top++; } } System.out.println("top trend : " + top_trend); //Using the Streaming API to get real time tweets based on the trending topics as keywords /* configurating twiter4j */ ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("S01GsVwuCAwZFp5BLg5C4k8PT") .setOAuthConsumerSecret("6jo0jo4b05Ec5ZJcf74v5yGUQu5v8DryUwypOBjPD6jaItRNzd") .setOAuthAccessToken("794259549297446912-Z3AWruBmLa7QmCO6BnybCSj1tZXNqbB") .setOAuthAccessTokenSecret("6ezMQPQVziW9yxyTITZA8Wc2RJWjcBKvbXZU4dOjo4bge") .setJSONStoreEnabled(true); /* end of configuration */ MongoClient mongo = new MongoClient("localhost", 27017); MongoDatabase database = mongo.getDatabase("myTweetdb2"); MongoCollection<Document> collection = database.getCollection("myTweetCol5"); TwitterStream twitterStream = new TwitterStreamFactory(cb.build()).getInstance(); StatusListener listener; listener = new StatusListener() { @Override public void onStatus(Status status) { String rawJSON = TwitterObjectFactory.getRawJSON(status); Document doc = Document.parse(rawJSON); collection.insertOne(doc); } @Override public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) { System.out.println("Got a status deletion notice id:" + statusDeletionNotice.getStatusId()); } @Override public void onTrackLimitationNotice(int numberOfLimitedStatuses) { System.out.println("Got track limitation notice:" + numberOfLimitedStatuses); } @Override public void onScrubGeo(long userId, long upToStatusId) { System.out.println("Got scrub_geo event userId:" + userId + " upToStatusId:" + upToStatusId); } @Override public void onStallWarning(StallWarning warning) { System.out.println("Got stall warning:" + warning); } @Override public void onException(Exception ex) { ex.printStackTrace(); } }; // twitterStream.sample(); twitterStream.addListener(listener); FilterQuery fq = new FilterQuery(); String keywords[] = { top_trend }; fq.track(keywords); twitterStream.filter(fq); }
From source file:TwitterCrawler.PrintSampleStream.java
License:Apache License
public static void main(String[] args) throws TwitterException { System.getProperties().put("http.proxyHost", "127.0.0.1"); System.getProperties().put("http.proxyPort", "8580"); //final PrintSampleStream pr = new PrintSampleStream(); try {//from ww w .ja va2 s.c o m pr.LinkMongodb(); } catch (Exception e) { e.printStackTrace(); } ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("7ZVgfKiOvBDcDFpytRWSA") .setOAuthConsumerSecret("JmeJVeym78arzmGthrDUshQyhkq6nWA9tWLUKxc") .setOAuthAccessToken("321341780-Zy7LptVYBZBVvAeQ5GFJ4aKFw8sdqhWBnvA3pDuO") .setOAuthAccessTokenSecret("foi8FnQCeN0J5cdwad05Q6d7dbytFayQn1ZOvmhF6Qc"); cb.setJSONStoreEnabled(true); TwitterStream twitterStream = new TwitterStreamFactory(cb.build()).getInstance(); StatusListener listener = new StatusListener() { @Override public void onException(Exception ex) { // TODO Auto-generated method stub ex.printStackTrace(); } @Override public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) { // TODO Auto-generated method stub System.out.println("Got a status deletion notice id:" + statusDeletionNotice.getStatusId()); } @Override public void onScrubGeo(long userId, long upToStatusId) { // TODO Auto-generated method stub System.out.println("Got scrub_geo event userId:" + userId + " upToStatusId:" + upToStatusId); } @Override public void onStatus(Status status) { //System.out.println("@" + status.getUser().getScreenName() + " - " + status.getText()); //System.out.println(status); String str = DataObjectFactory.getRawJSON(status); try { //JSONObject nnstr = new JSONObject(newstr); DBObject dbObject = (DBObject) JSON.parse(str); pr.collection.insert(dbObject); System.out.println(dbObject); pr.count++; /* if(pr.count>300000) { pr.mongo.close(); System.exit(0); } */ } catch (Exception e) { e.printStackTrace(); } } @Override public void onTrackLimitationNotice(int numberOfLimitedStatuses) { // TODO Auto-generated method stub System.out.println("Got track limitation notice:" + numberOfLimitedStatuses); } @Override public void onStallWarning(StallWarning arg0) { // TODO Auto-generated method stub } }; twitterStream.addListener(listener); //String[] Track = {"why Obama look like he about to drop the best album of 2013?"}; String[] trackArray = { "Mac", "App", "Store" }; //trackArray[1] = ; // Create a FilterQuery object and then set the items to track FilterQuery filter = new FilterQuery(); // Create an array of items to track //String[] itemsToTrack = {""}; // Set the items to track using FilterQuerys' track method. //filter.track(Track); filter.track(trackArray); // Assuming you have already created Twitter/TwitterStream object, // use the filter method to start streaming using the FilterQuery object just created. twitterStream.filter(filter); /* String[] username = {"katyperry"}; twitterStream.addListener(userlistener); twitterStream.user();*/ //pr.mongo.close(); }
From source file:twittermongodbapp.CollectTweets.java
static public void collectTweets(DB db, ConfigurationBuilder cf1, twitter4j.Twitter twitter) { TwitterStream twitterStream = new TwitterStreamFactory(cf1.build()).getInstance(); DBCollection collection = db.getCollection("collection"); DBCollection collection2 = db.getCollection("collection2"); BasicDBObject document0 = new BasicDBObject(); collection.remove(document0);/*from w w w. java 2 s. c om*/ collection2.remove(document0); StatusListener listener = new StatusListener() { @Override public void onStatus(Status status) { if (collection2.getCount() == 15000) System.exit(0); String json = DataObjectFactory.getRawJSON(status); DBObject doc = (DBObject) JSON.parse(json); try { collection2.insert(doc); } catch (Exception e) { System.out.println("MongoDB Connection Error : " + e.getMessage()); } System.out.println("Collected tweets :" + collection2.getCount()); } @Override public void onException(Exception ex) { ex.printStackTrace(); } @Override public void onDeletionNotice(StatusDeletionNotice arg0) { // TODO Auto-generated method stub } @Override public void onScrubGeo(long arg0, long arg1) { } @Override public void onStallWarning(StallWarning arg0) { // TODO Auto-generated method stub System.out.println(arg0); } @Override public void onTrackLimitationNotice(int arg0) { // TODO Auto-generated method stub System.out.println(arg0); } }; getTopTrends(twitter, twitterStream, listener); }
From source file:twittertweetscollection.TwitterTweetsCollection.java
public List<Status> execute() throws TwitterException { final List<Status> statuses = new ArrayList(); ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("I7WYWBE6eSNKdV4FYSyiuP0uk") .setOAuthConsumerSecret("oft7Y6WcUCvxovPU5modCZ3BOlHH2z9Px73UkFMILN4ltBhOni") .setOAuthAccessToken("3524247253-o7zXFn3r8PwPb4IUTYqHRQzVabTzfoFn9Ck7FzW") .setOAuthAccessTokenSecret("V7zkLiJmF0vsdX8rUdkXo3q1ha452vKqVtB5OoCuQWAgR"); TwitterStream twitterStream = new TwitterStreamFactory(cb.build()).getInstance(); StatusListener listener = new StatusListener() { public void onStatus(Status status) { statuses.add(status);// ww w .ja v a 2s. c o m System.out.println(statuses.size() + ":" + status.getText()); if (statuses.size() > 100) { synchronized (lock) { lock.notify(); } System.out.println("unlocked"); } } public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) { System.out.println("Got a status deletion notice id:" + statusDeletionNotice.getStatusId()); } public void onTrackLimitationNotice(int numberOfLimitedStatuses) { System.out.println("Got track limitation notice:" + numberOfLimitedStatuses); } public void onScrubGeo(long userId, long upToStatusId) { System.out.println("Got scrub_geo event userId:" + userId + " upToStatusId:" + upToStatusId); } public void onException(Exception ex) { ex.printStackTrace(); } @Override public void onStallWarning(StallWarning sw) { System.out.println(sw.getMessage()); } }; //FilterQuery fq = new FilterQuery(); //String keywords[] = { "SuperBowlSunday"}; //fq.track(keywords); twitterStream.addListener(listener); twitterStream.sample(); //twitterStream.filter(fq); try { synchronized (lock) { lock.wait(); } } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("returning statuses"); twitterStream.shutdown(); return statuses; }
From source file:twitter_app_p1.Twitter_app_p1.java
public static void initialize_stuff() { ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("T9Gl1DWeRjeBazUInktTNtEtD") .setOAuthConsumerSecret("3NXrL1qGpF3WPVyJQ7ytInlhNjIsMgT6s7bJOIDhD1uotzZ958") .setOAuthAccessToken("2428771880-4e3LHhOzmiYx4lChlAEYtJ6sB2oetARYbXcqfyU") .setOAuthAccessTokenSecret("7HLOf3dafjJEGoioWOMHfgiNrhBDb66YJZgSzrDkTNA9x") .setJSONStoreEnabled(true);//from ww w. ja v a2s . com TwitterStreamFactory twitterStreamFact = new TwitterStreamFactory(cb.build()); twitterStream = twitterStreamFact.getInstance(); }
From source file:twittynumnum.TwittyNumNum.java
public static void main(String[] args) { ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("6id0aTmQrXrfnijhEsC5wfzTO") .setOAuthConsumerSecret("E8A8nvssRUvQ0B9Td32L8hW4wyMyZwPQeAPsvj1EF1WK4HUTou") .setOAuthAccessToken("4350904703-rrfWDlkfRi5l2iwKj1EMpbzxmXu44aqfPL9LOlX") .setOAuthAccessTokenSecret("dS3dT6JNDD1ih6EHXCnBrBm7vDrMWFjcDCupyyiL6RkEu"); //TwitterFactory tf = new TwitterFactory(cb.build()); //Twitter twitter = tf.getInstance(); //BackwardGrinder backy = new BackwardGrinder(twitter); // backy.grind("#glutenfree"); PrintWriter out;//from w ww .ja va2 s. c o m try { out = new PrintWriter("data/#DebatRegionales.txt"); TwitterStream twitterStream = new TwitterStreamFactory(cb.build()).getInstance(); FutureListener future = new FutureListener(twitterStream, out); String[] keywords = { "#Paris" }; future.listen(keywords); } catch (FileNotFoundException ex) { Logger.getLogger(TwittyNumNum.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:uk.ac.susx.tag.method51.twitter.params.TwitterAccountParams.java
License:Apache License
public TwitterStream buildTwitterStream() { final Configuration conf = newConfigurationBuilder().setGZIPEnabled(true).build(); return new TwitterStreamFactory(conf).getInstance(); }
From source file:uk.co.flax.ukmp.twitter.ManagedTwitterClient.java
License:Apache License
@Override public void start() throws Exception { Configuration authConfig = buildConfiguration(); TwitterStreamFactory tsf = new TwitterStreamFactory(authConfig); stream = tsf.getInstance();/* w ww .j a va 2 s . co m*/ StatusListener statusListener = new UKMPStatusListener(statusQueue, deletionQueue); stream.addListener(statusListener); // Start the update and delete threads deletionThread.start(); updateThread.start(); }