public static void main(String[] args) throws TwitterException, IOException { Twitter twitter = TwitterFactory.getSingleton(); JLanguageTool langTool = new JLanguageTool(new AmericanEnglish()); List<String> twts = new ArrayList<String>(); for (String arg : args) { Query query = new Query(arg); QueryResult result; int counter = 0; do { result = twitter.search(query); List<Status> tweets = result.getTweets(); for (Status tweet : tweets) { if (isEligible(tweet)) { System.out.println("@" + tweet.getUser().getScreenName() + " - " + tweet.getText()); System.out.println(tweet.getLang()); twts.add(tweet.getText()); counter++; } } } while ((query = result.nextQuery()) != null && counter < 5); } for (String str : twts) { List<RuleMatch> matches = langTool.check(str); for (RuleMatch match : matches) { System.out.println( "Potential error at line " + match.getLine() + ", column " + match.getColumn() + ": " + match.getMessage()); System.out.println("Suggested correction: " + match.getSuggestedReplacements()); } } }
public boolean getMentions(Twitter twitter) { boolean newActivity = false; try { if (lastRefresh != 0l) { Paging paging = new Paging(1, 50, lastRefresh); List<Status> mentions = twitter.getMentionsTimeline(paging); if (mentions.size() > 0) { insertMentions(mentions); commitLastRefresh(mentions.get(0).getId()); newActivity = true; } } else { Paging paging = new Paging(1, 1); List<Status> lastMention = twitter.getMentionsTimeline(paging); if (lastMention.size() > 0) { commitLastRefresh(lastMention.get(0).getId()); } } } catch (TwitterException e) { e.printStackTrace(); } return newActivity; }
public boolean getFollowers(Twitter twitter) { boolean newActivity = false; try { List<User> followers = twitter.getFollowersList( useSecondAccount ? AppSettings.getInstance(context).secondScreenName : AppSettings.getInstance(context).myScreenName, -1, 200); User me = twitter.verifyCredentials(); int oldFollowerCount = sharedPrefs.getInt("activity_follower_count_" + currentAccount, 0); Set<String> latestFollowers = sharedPrefs.getStringSet( "activity_latest_followers_" + currentAccount, new HashSet<String>()); Log.v(TAG, "followers set size: " + latestFollowers.size()); Log.v(TAG, "old follower count: " + oldFollowerCount); Log.v(TAG, "current follower count: " + me.getFollowersCount()); List<User> newFollowers = new ArrayList<User>(); if (latestFollowers.size() != 0) { for (int i = 0; i < followers.size(); i++) { if (!latestFollowers.contains(followers.get(i).getScreenName())) { Log.v(TAG, "inserting @" + followers.get(i).getScreenName() + " as new follower"); newFollowers.add(followers.get(i)); newActivity = true; } else { break; } } } insertFollowers(newFollowers); latestFollowers.clear(); for (int i = 0; i < 50; i++) { if (i < followers.size()) { latestFollowers.add(followers.get(i).getScreenName()); } else { break; } } SharedPreferences.Editor e = sharedPrefs.edit(); e.putStringSet("activity_latest_followers_" + currentAccount, latestFollowers); e.putInt("activity_follower_count_" + currentAccount, me.getFollowersCount()); e.commit(); } catch (TwitterException e) { e.printStackTrace(); } return newActivity; }
public List<User> getFollowing(int num) { try { List<User> b = new ArrayList<User>(); for (twitter4j.User u : twitter.getFriendsList(twitter.verifyCredentials().getId(), -1)) { b.add(new TwitterUser(u)); } return b; } catch (TwitterException e) { e.printStackTrace(); return null; } }
public Map<String, RateLimitStatus> getRateLimit() { try { return twitter.getRateLimitStatus(); } catch (TwitterException e) { e.printStackTrace(); return null; } }
public User getUser(String name) { try { return new TwitterUser(twitter.showUser(name)); } catch (TwitterException e) { e.printStackTrace(); return null; } }
public List<Status> getMyTweets(Twitter twitter) { try { Paging paging = new Paging(1, 20); return twitter.getUserTimeline(paging); } catch (TwitterException e) { return null; } }
public void grab(Date timeLimit) { log.info("Twitter grabber started..."); Twitter twitter = new TwitterFactory().getInstance(); List<Brand> brandList = handler.getBrandProvider().getAllBrands(); ArticleProvider articleProvider = handler.getArticleProvider(); for (Brand b : brandList) { Query query = new Query(b.getName()); query.setRpp(PAGE_SIZE); query.setLang("ru"); query.setResultType(Query.MIXED); List<Tweet> resultTweets = new LinkedList<Tweet>(); QueryResult queryResult; int pageNumber = 1; try { do { query.setPage(pageNumber); queryResult = twitter.search(query); resultTweets.addAll(queryResult.getTweets()); pageNumber++; log.info(pageNumber); } while (ISSUANCE_SIZE > resultTweets.size()); } catch (TwitterException e) { throw new RuntimeException(e); } log.info("tweets in da111y: " + resultTweets.size()); twitter = null; twitter = new TwitterFactory().getInstance(); for (Tweet t : resultTweets) { articleProvider.writeArticleToDataStore( new Article(-1, b.getId(), 2, "", t.getText(), "", getSimpleTime(t.getCreatedAt()), 1)); } } log.info("twitter grabber finished succesful."); }
public User getAuthenticatedUser() { User u = null; for (int i = 0; i < 5; i++) { try { u = new TwitterUser(twitter.verifyCredentials()); return u; } catch (TwitterException e) { System.out.printf("Failed to get authenticated user; attempt %d%n", i); try { Thread.sleep(500); } catch (InterruptedException e2) {; } } } return u; }
public static void main(String[] args) { try { meet myobj = new meet(); // load jsiconfig.txt ArrayList<String> myconfiglist = new ArrayList<String>(); myconfiglist = myobj.loadArray("jsiconfig.txt"); // The text uri // "mongodb://*****:*****@ds023288.mongolab.com:23288/sample"; String textUri = myconfiglist.get(0); // Create MongoClientURI object from which you get MongoClient obj MongoClientURI uri = new MongoClientURI(textUri); // Connect to that uri MongoClient m = new MongoClient(uri); // get the database named sample String DBname = myconfiglist.get(1); DB d = m.getDB(DBname); // get the collection mycollection in sample String collectionName = myconfiglist.get(2); DBCollection collection = d.getCollection(collectionName); // System.out.println("Config: "+textUri+":"+DBname+":"+collectionName); // twitter4j // Twitter twitter = new TwitterFactory().getInstance(); Twitter twitter = new TwitterFactory().getSingleton(); User user = twitter.verifyCredentials(); // Twitter collection of latest tweets into the home account - defaulted to latest 20 tweets// ////////////////////////////////////////////////////////////// ArrayList<String> mylatesttweetslist = new ArrayList<String>(); // get list of tweets from a user or the next tweet listed try { long actid = 0; // twitter.createFriendship(actid); // The factory instance is re-useable and thread safe. // Twitter twitter = TwitterFactory.getSingleton(); List<Status> statuses = twitter.getHomeTimeline(); System.out.println("Showing home timeline."); for (Status status : statuses) { // System.out.println(status.getUser().getName() + ":" +status.getText()); // Addes timeline to an array String mytweets = status.getUser().getName() + ":" + status.getText(); mylatesttweetslist.add(mytweets); } ; } catch (TwitterException te) { te.printStackTrace(); System.out.println("Failed to get timeline: " + te.getMessage()); System.exit(-1); } // MongoDB Insert Below // ////////////////////////// // System Date Date sd = new Date(); String sysdate = sd.toString(); // Toggle the below to display and insert the transactions as required boolean showtrans = true; boolean inserttrans = true; // checkArray - loads args to a text string to allow the contains function String checkString = ""; for (int ck = 0; ck < args.length; ck++) { checkString = checkString + args[ck]; } ; // display transactions flag on runnning jsimongo eg: java jsimongo -d will NOT display // transactions // insert transactions flag on runnning jsimongo eg: java jsimongo -i will NOT insert // transactions if (args.length > 0) { if (checkString.contains("-d")) showtrans = false; if (checkString.contains("-i")) inserttrans = false; } ; int x = 0; for (String atweet : mylatesttweetslist) { x++; // Display tweets to console if (showtrans == true) { System.out.println("tweet : " + atweet); System.out.println("Created_DateTime : " + sysdate); // was sysdate } ; // Insert JSON into MongoDB if (inserttrans == true) { BasicDBObject b = new BasicDBObject(); System.out.println("tweet : " + atweet); System.out.println("Created_DateTime : " + sysdate); // was sysdate // Insert the JSON object into the chosen collection collection.insert(b); } ; Thread.sleep(1); } ; System.out.println("End, the number of tweets inserted at this time was: " + x); } catch (Exception e) { e.printStackTrace(); } }