@Override public List<Status> loadInBackground() { try { // 大阪のWOEID // int osaka = 15015370; // トレンドを取得する // Trend[] trend = this.twitter.getPlaceTrends(osaka).getTrends(); // 取得したトレンドから、ランダムで1つを選択する // Random rnd = new Random(); // String q = trend[rnd.nextInt(trend.length)].getQuery(); // 検索文字列を設定する Query query = new Query(keyword); query.setLocale("ja"); // 日本語のtweetに限定する query.setCount(100); // 最大20tweetにする(デフォルトは15) query.resultType(Query.RECENT); QueryResult result = null; // 最大1500件(15ページ)なので15回ループ for (int i = 1; i <= 15; i++) { result = twitter.search(query); System.out.println("ヒット数 : " + result.getTweets().size()); System.out.println("ページ数 : " + new Integer(i).toString()); /* // 検索結果を見てみる for (Status tweet : result.getTweets()) { // 本文 String str = tweet.getText(); java.util.Date hiduke = tweet.getCreatedAt(); System.out.println(hiduke + str); // ハッシュタグとURLの削除 } if (result.hasNext()) { query = result.nextQuery(); } else { break; } */ if (result.getTweets().size() < 100) { break; } } // 検索の実行 // QueryResult result = this.twitter.search(query); return result.getTweets(); } catch (TwitterException e) { Log.d("twitter", e.getMessage()); } return null; }
/** * Search tweets with the keyword "word" * * @param word : keyword */ public void doSearch(String word) { List<Status> listStatus; listCleanTweets = new ArrayList<Tweet>(); listDirtyTweets = new ArrayList<Tweet>(); try { Query query = new Query(word); query.resultType(ResultType.mixed); query.setLang("fr"); query.count(30); QueryResult result = InterfaceG.twitter.search(query); listStatus = result.getTweets(); for (Status status : listStatus) { Tweet tclean = new Tweet( status.getId(), status.getUser().getName(), cleanTweet(status.getText()), status.getCreatedAt().toString(), -1); listCleanTweets.add(tclean); Tweet tdirty = new Tweet( status.getId(), status.getUser().getName(), status.getText(), status.getCreatedAt().toString(), -1); listDirtyTweets.add(tdirty); } setChanged(); notifyObservers(); } catch (TwitterException te) { System.out.println("doSearch:TwitterExc"); System.out.println(te.getMessage()); System.exit(-1); } catch (IOException e) { System.out.println("doSearch:IOExc"); System.out.println(e.getMessage()); } }