List of usage examples for twitter4j TwitterFactory getInstance
public Twitter getInstance()
From source file:Demo.java
/** * Main method./*from w ww . j av a 2 s .c om*/ * * @param args * @throws TwitterException */ public static void main(String[] args) throws TwitterException, IOException { // The TwitterFactory object provides an instance of a Twitter object // via the getInstance() method. The Twitter object is the API consumer. // It has the methods for interacting with the Twitter API. TwitterFactory tf = new TwitterFactory(); Twitter twitter = tf.getInstance(); boolean keepItGoinFullSteam = true; do { // Main menu Scanner input = new Scanner(System.in); System.out.print("\n--------------------" + "\nH. Home Timeline\nS. Search\nT. Tweet" + "\n--------------------" + "\nA. Get Access Token\nQ. Quit" + "\n--------------------\n> "); String choice = input.nextLine(); try { // Home Timeline if (choice.equalsIgnoreCase("H")) { // Display the user's screen name. User user = twitter.verifyCredentials(); System.out.println("\n@" + user.getScreenName() + "'s timeline:"); // Display recent tweets from the Home Timeline. for (Status status : twitter.getHomeTimeline()) { System.out.println("\n@" + status.getUser().getScreenName() + ": " + status.getText()); } } // Search else if (choice.equalsIgnoreCase("S")) { // Ask the user for a search string. System.out.print("\nSearch: "); String searchStr = input.nextLine(); // Create a Query object. Query query = new Query(searchStr); // Send API request to execute a search with the given query. QueryResult result = twitter.search(query); // Display search results. result.getTweets().stream().forEach((Status status) -> { System.out.println("\n@" + status.getUser().getName() + ": " + status.getText()); }); } // Tweet else if (choice.equalsIgnoreCase("T")) { boolean isOkayLength = true; String tweet; do { // Ask the user for a tweet. System.out.print("\nTweet: "); tweet = input.nextLine(); // Ensure the tweet length is okay. if (tweet.length() > 140) { System.out.println("Too long! Keep it under 140."); isOkayLength = false; } } while (isOkayLength == false); // Send API request to create a new tweet. Status status = twitter.updateStatus(tweet); System.out.println("Just tweeted: \"" + status.getText() + "\""); } // Get Access Token else if (choice.equalsIgnoreCase("A")) { // First, we ask Twitter for a request token. RequestToken reqToken = twitter.getOAuthRequestToken(); System.out.println("\nRequest token: " + reqToken.getToken() + "\nRequest token secret: " + reqToken.getTokenSecret()); AccessToken accessToken = null; while (accessToken == null) { // The authorization URL sends the request token to Twitter in order // to request an access token. At this point, Twitter asks the user // to authorize the request. If the user authorizes, then Twitter // provides a PIN. System.out .print("\nOpen this URL in a browser: " + "\n " + reqToken.getAuthorizationURL() + "\n" + "\nAuthorize the app, then enter the PIN here: "); String pin = input.nextLine(); try { // We use the provided PIN to get the access token. The access // token allows this app to access the user's account without // knowing his/her password. accessToken = twitter.getOAuthAccessToken(reqToken, pin); } catch (TwitterException te) { System.out.println(te.getMessage()); } } System.out.println("\nAccess token: " + accessToken.getToken() + "\nAccess token secret: " + accessToken.getTokenSecret() + "\nSuccess!"); } // Quit else if (choice.equalsIgnoreCase("Q")) { keepItGoinFullSteam = false; GeoApiContext context = new GeoApiContext() .setApiKey("AIzaSyArz1NljiDpuOriFWalOerYEdHOyi8ow8Y"); System.out.println(GeocodingApi.geocode(context, "Sigma Phi Epsilon, Lincoln, Nebraska, USA") .await()[0].geometry.location.toString()); System.out.println(GeocodingApi.geocode(context, "16th and R, Lincoln, Nebraska, USA") .await()[0].geometry.location.toString()); File htmlFile = new File("map.html"); Desktop.getDesktop().browse(htmlFile.toURI()); } // Bad choice else { System.out.println("Invalid option."); } } catch (IllegalStateException ex) { System.out.println(ex.getMessage()); } catch (Exception ex) { System.out.println(ex.getMessage()); } } while (keepItGoinFullSteam == true); }
From source file:TwitterRetrieval.java
License:Apache License
@Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); PrintWriter out;/*from w ww . ja v a2s . c o m*/ try { // img stuff not req'd for source code html showing // all links relative // XXX // making these absolute till we work out the // addition of a PathInfo issue ConfigurationBuilder cb = new ConfigurationBuilder(); System.setProperty("twitter4j.http.httpClient", "twitter4j.internal.http.HttpClientImpl"); cb.setOAuthConsumerKey("56NAE9lQHSOZIGXRktd5Qw") .setOAuthConsumerSecret("zJjJrUUs1ubwKjtPOyYzrwBJzpwq7ud8Aryq1VhYH2E") .setOAuthAccessTokenURL("https://api.twitter.com/oauth/access_token") .setOAuthRequestTokenURL("https://api.twitter.com/oauth/request_token") .setOAuthAuthorizationURL("https://api.twitter.com/oauth/authorize") .setOAuthAccessToken("234742739-I1l0VGTTjRUbZrfH1jvKnTVFU9ZEvkxxUDpvsAJ2") .setOAuthAccessTokenSecret("jLe3imI3JiPgmHCatt6SqYgRAcX5q8s6z38oUrqMc"); TwitterFactory tf = new TwitterFactory(cb.build()); Twitter twitter = tf.getInstance(); Query query = new Query(request.getParameter("q")); String tags = request.getParameter("tags"); String zone = request.getParameter("zone"); String users = request.getParameter("users"); Map<String, LatLon> latslongs = new HashMap(); String[] tagsArray = null; if (tags != null) { tagsArray = tags.split(","); } String[] userArray = null; if (users != null) { userArray = users.split(","); int count = userArray.length; usuarios = new String[count]; latitud = new String[count]; longitud = new String[count]; for (int i = 0; i < userArray.length; i++) { temp = userArray[i]; if (temp != null) { int hit1 = temp.indexOf("["); int hit2 = temp.indexOf(";"); int hit3 = temp.indexOf("]"); latslongs.put(temp.substring(0, hit1), new LatLon(temp.substring(hit1 + 1, hit2), temp.substring(hit2 + 1, hit3))); /* * usuarios[i] = temp.substring(0, hit1); latitud[i] = * temp.substring(hit1 + 1, hit2); longitud[i] = * temp.substring(hit2 + 1, hit3); */ } } } QueryResult result; result = twitter.search(query); List<Post> postList = new ArrayList(); List<PostType> postsList = new ArrayList(); Post solrPost; PostType post; //List<LinkType> links = new ArrayList(); List<ActionType> actions; ArrayList<User> toUsers = new ArrayList(); ArrayList<LinkType> links; int d; InputStream stream = getServletContext().getResourceAsStream("/WEB-INF/servlet.properties"); Properties props = null; if (props == null) { props = new Properties(); props.load(stream); } ZoneDao zoneDao = new ZoneDao(props.getProperty("db_host"), Integer.valueOf(props.getProperty("db_port")), props.getProperty("db_name")); PlaceDao placeDao = new PlaceDao(props.getProperty("db_host"), Integer.valueOf(props.getProperty("db_port")), props.getProperty("db_name")); Place place = null; org.zonales.tagsAndZones.objects.Zone zoneObj = zoneDao .retrieveByExtendedString(Utils.normalizeZone(zone)); for (Tweet tweet : (List<Tweet>) result.getTweets()) { d = MAX_TITLE_LENGTH; actions = new ArrayList(); try { actions.add(new ActionType("retweets", twitter.getRetweets(tweet.getId()).size())); actions.add(new ActionType("replies", twitter.getRelatedResults(tweet.getId()).getTweetsWithReply().size())); } catch (TwitterException ex) { Logger.getLogger(TwitterRetrieval.class.getName()).log(Level.SEVERE, "Error intentando obtener retweets o replies: {0}", new Object[] { ex }); } solrPost = new Post(); solrPost.setZone(new Zone(String.valueOf(zoneObj.getId()), zoneObj.getName(), zoneObj.getType().getName(), zoneObj.getExtendedString())); solrPost.setSource("Twitter"); solrPost.setId(String.valueOf(tweet.getId())); if (request.getParameter(tweet.getFromUser() + "Place") != null) { place = placeDao.retrieveByExtendedString(request.getParameter(tweet.getFromUser() + "Place")); } else { place = null; } User usersolr = new User(String.valueOf(tweet.getFromUserId()), tweet.getFromUser(), "http://twitter.com/#!/" + tweet.getFromUser(), tweet.getSource(), place != null ? new org.zonales.entities.Place(String.valueOf(place.getId()), place.getName(), place.getType().getName()) : null); if (users != null) { /* * for (int i = 0; i < usuarios.length; i++) { if * (tweet.getFromUser().equals(usuarios[i])) { * usersolr.setLatitude(Double.parseDouble(latitud[i])); * usersolr.setLongitude(Double.parseDouble(longitud[i])); } } */ //usersolr.setLatitude(Double.parseDouble(latslongs.get(tweet.getFromUser()).latitud)); //usersolr.setLongitude(Double.parseDouble(latslongs.get(tweet.getFromUser()).longitud)); } solrPost.setFromUser(usersolr); if (tweet.getToUser() != null) { toUsers.add(new User(String.valueOf(tweet.getToUserId()), tweet.getToUser(), null, tweet.getSource(), null)); solrPost.setToUsers(toUsers); } if (tweet.getText().length() > d) { while (d > 0 && tweet.getText().charAt(d - 1) != ' ') { d--; } } else { d = tweet.getText().length() - 1; } solrPost.setTitle(tweet.getText().substring(0, d) + (tweet.getText().length() > MAX_TITLE_LENGTH ? "..." : "")); solrPost.setText(tweet.getText()); //post.setLinks(new LinksType(links)); solrPost.setActions((ArrayList<ActionType>) actions); solrPost.setCreated(tweet.getCreatedAt().getTime()); solrPost.setModified(tweet.getCreatedAt().getTime()); solrPost.setRelevance( actions.size() == 2 ? actions.get(0).getCant() * 3 + actions.get(1).getCant() : 0); solrPost.setPostLatitude( tweet.getGeoLocation() != null ? tweet.getGeoLocation().getLatitude() : null); solrPost.setPostLongitude( tweet.getGeoLocation() != null ? tweet.getGeoLocation().getLongitude() : null); links = new ArrayList<LinkType>(); links.add(new LinkType("avatar", tweet.getProfileImageUrl())); if (tweet.getText() != null && getLinks(tweet.getText()) != null) { links.addAll(getLinks(tweet.getText())); } if (solrPost.getLinks() == null) { solrPost.setLinks(new ArrayList<LinkType>()); } solrPost.setLinks(links); if (tagsArray != null && tagsArray.length > 0) { solrPost.setTags(new ArrayList<String>(Arrays.asList(tagsArray))); } solrPost.setExtendedString(WordUtils.capitalize((solrPost.getFromUser().getPlace() != null ? solrPost.getFromUser().getPlace().getName() + ", " : "") + solrPost.getZone().getExtendedString().replace("_", " "))); postList.add(solrPost); post = new PostType(); post.setZone(new Zone(String.valueOf(zoneObj.getId()), zoneObj.getName(), zoneObj.getType().getName(), zoneObj.getExtendedString())); post.setSource("Twitter"); post.setId(String.valueOf(tweet.getId())); User user = new User(String.valueOf(tweet.getFromUserId()), tweet.getFromUser(), "http://twitter.com/#!/" + tweet.getFromUser(), tweet.getSource(), place != null ? new org.zonales.entities.Place(String.valueOf(place.getId()), place.getName(), place.getType().getName()) : null); if (users != null) { /* * for (int i = 0; i < usuarios.length; i++) { if * (tweet.getFromUser().equals(usuarios[i])) { * user.setLatitude(Double.parseDouble(latitud[i])); * user.setLongitude(Double.parseDouble(longitud[i])); } } */ //user.setLatitude(Double.parseDouble(latslongs.get(tweet.getFromUser()).latitud)); //user.setLongitude(Double.parseDouble(latslongs.get(tweet.getFromUser()).longitud)); } post.setFromUser(user); if (tweet.getToUser() != null) { toUsers.add(new User(String.valueOf(tweet.getToUserId()), tweet.getToUser(), null, tweet.getSource(), null)); post.setToUsers(new ToUsersType(toUsers)); } post.setTitle(tweet.getText().substring(0, d) + (tweet.getText().length() > MAX_TITLE_LENGTH ? "..." : "")); post.setText(tweet.getText()); //post.setLinks(new LinksType(links)); post.setActions(new ActionsType(actions)); post.setCreated(String.valueOf(tweet.getCreatedAt().getTime())); post.setModified(String.valueOf(tweet.getCreatedAt().getTime())); post.setRelevance( actions.size() == 2 ? actions.get(0).getCant() * 3 + actions.get(1).getCant() : 0); post.setPostLatitude(tweet.getGeoLocation() != null ? tweet.getGeoLocation().getLatitude() : null); post.setPostLongitude( tweet.getGeoLocation() != null ? tweet.getGeoLocation().getLongitude() : null); links = new ArrayList<LinkType>(); links.add(new LinkType("avatar", tweet.getProfileImageUrl())); post.setLinks(new LinksType(getLinks(tweet.getText()))); if (tagsArray != null && tagsArray.length > 0) { post.setTags(new TagsType(Arrays.asList(tagsArray))); } postsList.add(post); } PostsType posts = new PostsType(postsList); Gson gson = new Gson(); if ("xml".equalsIgnoreCase(request.getParameter("format"))) { response.setContentType("application/xml"); out = response.getWriter(); try { for (PostType postIt : posts.getPost()) { postIt.setVerbatim(gson.toJson(postIt)); } Twitter2XML(posts, out); } catch (Exception ex) { Logger.getLogger(TwitterRetrieval.class.getName()).log(Level.SEVERE, null, ex); } } else { response.setContentType("text/javascript"); out = response.getWriter(); out.println("{post: " + gson.toJson(postList) + "}"); } } catch (TwitterException ex) { Logger.getLogger(TwitterRetrieval.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:GetLiveMedia.java
License:Open Source License
public void TweetCollect(String searchString) throws TwitterException { tXCoord = 0;//w w w.j av a2s. com tYCoord = 0; ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("0c1v1wqqNATaVcWpINaHoW3o5") .setOAuthConsumerSecret("a6sEAJ1NLY3cXhkMTrMZF62bIfww6qLvlEetDAU9O09Mp04lyh") .setOAuthAccessToken("330427831-RJig6B6YycJL3xQVoEjjyRaujwnr1xHEQGtSHOOc") .setOAuthAccessTokenSecret("Da71qk4SN6Nu88mLkugDDR6CftVcgOcz3QB8dHNw4hVbD"); TwitterFactory tf = new TwitterFactory(cb.build()); twitter = tf.getInstance(); query = new Query("#" + searchString); result = twitter.search(query); for (Status status : result.getTweets()) { try { System.out.println(status.getGeoLocation()); System.out.println(status.getCreatedAt()); tXCoord = status.getGeoLocation().getLatitude(); tYCoord = status.getGeoLocation().getLongitude(); twitterString = ("@" + status.getUser().getScreenName() + ": " + status.getText() + " : " + "(" + tXCoord + ", " + tYCoord + ")"); twitterURL = "https://twitter.com/" + status.getUser().getScreenName() + "/status/" + status.getId(); } catch (Exception e) { } } }
From source file:TwitterListenerSnippet.java
License:BEER-WARE LICENSE
public void twitterConfiguration() { ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setOAuthConsumerKey("34sJKGiU71xaVBVeutDA"); cb.setOAuthConsumerSecret("sMGrXuf2zbhS29cEV9HYHDeNoU45aoGWcw1t2JbJMMk"); cb.setOAuthAccessToken("1272243708-woC2NKzPErcj9CAsUGURNOmS9OL4ISdFI9hyQmh"); cb.setOAuthAccessTokenSecret("D846JFR6nH9v13icgBcLfyNCUVWg53R9jhWwjmwuBU"); c = cb.build();/*ww w .j ava 2 s . com*/ TwitterFactory tf = new TwitterFactory(c); twitter = tf.getInstance(); }
From source file:account.GetRateLimitStatus.java
License:Apache License
public static ConstVars getRateLimit(String[] args) { ConstVars StaticVars = new ConstVars(); try {//from w w w. j av a 2 s . co m // init Twitter OAuth ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey(args[1]).setOAuthConsumerSecret(args[2]) .setOAuthAccessToken(args[3]).setOAuthAccessTokenSecret(args[4]); TwitterFactory tf = new TwitterFactory(cb.build()); Twitter twitter = tf.getInstance(); // it returns RateLimits of all end-points Map<String, RateLimitStatus> rateLimitStatus = twitter.getRateLimitStatus(); // get RateLimit of required end-point RateLimitStatus status = rateLimitStatus.get(args[0]); String Endpoint = args[0]; int Limit = status.getLimit(); int Remaining = status.getRemaining(); int ResetTimeInSeconds = status.getResetTimeInSeconds(); int SecondsUntilReset = status.getSecondsUntilReset(); // set and return rate limit info to ConstVars's variables StaticVars.Endpoint = Endpoint; StaticVars.Limit = Limit; StaticVars.Remaining = Remaining; StaticVars.ResetTimeInSeconds = ResetTimeInSeconds; StaticVars.SecondsUntilReset = SecondsUntilReset; } catch (TwitterException te) { if (args.length == 6) { System.err .println("Failed to get rate limit status of " + args[5] + " because: " + te.getMessage()); } else { System.err.println("Failed to get rate limit status because: " + te.getMessage()); } } return StaticVars; }
From source file:android.stickynotes.StickyNotesActivity.java
License:Apache License
private void getTweets(String twit) { wifi.setWifiEnabled(true);/*from w w w .ja v a 2s .co m*/ ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("TvywVhWx7r7QQev2UGfA4g") .setOAuthConsumerSecret("Nv22zsyf1VS0vvi6hwAMyvJk9LUtSXwRUB4xwp2gRs"); TwitterFactory tf = new TwitterFactory(cb.build()); Twitter twitter = tf.getInstance(); try { QueryResult result = twitter.search(new Query(twit)); List<Tweet> tweets = result.getTweets(); textStatus.setText(""); textStatus.append("Recent tweets about '" + twit + "':\n"); for (Tweet tweet : tweets) { textStatus.append("@" + tweet.getFromUser() + " - " + tweet.getText() + "\n\n"); } } catch (TwitterException te) { te.printStackTrace(); textStatus.append("Failed to search tweets: " + te.getMessage() + " " + twit); } }
From source file:benche.me.TwitterParser.Main.java
License:Open Source License
/** * Configure twitter API connection for historical search * @return Twitter connection instance *//*from www .java 2 s .c om*/ private static Twitter configureSearch() { ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey(Constants.CONSUMER_KEY_KEY) .setOAuthConsumerSecret(Constants.CONSUMER_SECRET_KEY) .setOAuthAccessToken(Constants.ACCESS_TOKEN_KEY) .setOAuthAccessTokenSecret(Constants.ACCESS_TOKEN_SECRET_KEY); TwitterFactory tf = new TwitterFactory(cb.build()); Twitter twitter = tf.getInstance(); return twitter; }
From source file:clientetwitter.ClienteTwitter.java
public static void PostInTimeLine(String texto) throws TwitterException { ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("xxxxxxxxxxxx") //to get all the OAuth go to apps.twitter.com .setOAuthConsumerSecret("xxxxxxxxxxxxxxxx").setOAuthAccessToken("xxxxxxxxxxxxxxxxxxxxxxx") .setOAuthAccessTokenSecret("xxxxxxxxxxxxxxxxxxxx"); TwitterFactory tf = new TwitterFactory(cb.build()); twitter4j.Twitter tw = tf.getInstance(); //posting// w ww .j av a 2s. c o m Status stat = tw.updateStatus(texto); System.out.println("Posted"); }
From source file:clientetwitter.ClienteTwitter.java
public static void ReadTimeLine() throws TwitterException { ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("ZpF1TSpAyQlBLMN7egUz3uT3D") .setOAuthConsumerSecret("r2icg36QB6G862Re2IvwHNGuDK25z5awKSeNG9kV9LRpcAmuOW") .setOAuthAccessToken("4314010284-QGXKFbFQ5TK4zqbplRsfoP0wL6NTv7bsMJypWex") .setOAuthAccessTokenSecret("4v61YXTkzM3Kob0xAHu59ISgM0fTKSLrOuDXTG5ctX7rr"); TwitterFactory tf = new TwitterFactory(cb.build()); twitter4j.Twitter tw = tf.getInstance(); //reading//from w w w .ja v a 2s .c o m List<Status> statuses = tw.getHomeTimeline(); for (Status status1 : statuses) { System.out.println(status1.getUser().getName() + ": " + status1.getText()); } }
From source file:cloudcomputebot.Twitter.TwitterLib.java
License:Open Source License
public static void init() { ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true).setOAuthConsumerKey("yZpAVykzcxwyohWOVBwuFaaaB") .setOAuthConsumerSecret("tXZQzYPeh1YmxGUPYotaKFoeLKeI6m8dAPgPh60l4mSltmMpxw") .setOAuthAccessToken("4741197613-i0WRUBMg1oGM2JR6GWnAztKs60u8lhMBhlr8TXD") .setOAuthAccessTokenSecret("H4EMPCNPV0NkTom3aUZB8J2uOaWnYHC28vxyTZ1bCvpd6"); TwitterFactory tf = new TwitterFactory(cb.build()); t = tf.getInstance(); }