twitterのツイートをユーザ名と時間を指定して取得したいのですが、以下のように書くとTwitterExceptionが返ってきます。
引数として、指定日時と、複数のユーザ情報を渡しています。
指定日時から5分以内のツイートを20個取得したいです。
どうしたら上手くツイートを取得できるでしょうか。
java
1public static ArrayList<String> hideMessages(Date date, ResponseList<User> rtUser) { 2 ArrayList<String> messages = new ArrayList<String>(); 3 4 Calendar calendar = Calendar.getInstance(); 5 calendar.setTime(date); 6 calendar.add(Calendar.MINUTE, 5); 7 8 Date forDate = new Date(); 9 forDate = calendar.getTime(); 10 11 try { 12 ConfigurationBuilder cb = new ConfigurationBuilder(); 13 cb.setDebugEnabled(true) 14 .setOAuthConsumerKey(ConsumerKey) 15 .setOAuthConsumerSecret(ConsumerSecret) 16 .setOAuthAccessToken(AccessToken) 17 .setOAuthAccessTokenSecret(AccessTokenSecret); 18 TwitterFactory tf = new TwitterFactory(cb.build()); 19 Twitter twitter = tf.getInstance(); 20 21 for(int i = 0; i < 20; i++) { 22 Query rtQuery = new Query("from:" + rtUser.get(i) + " since:" + date + " until:" + forDate); 23 QueryResult rtResult = twitter.search(rtQuery); 24 25 for(Status rt : rtResult.getTweets()) { 26 messages.add(rt.getText()); 27 } 28 } 29 30 }catch(TwitterException e) { 31 System.out.println(e); 32 } 33 return messages; 34 }
以下エラーメッセージです
403:The request is understood, but it has been refused. An accompanying error message will explain why. This code is used when requests are being denied due to update limits (https://support.twitter.com/articles/15364-about-twitter-limits-update-api-dm-and-following).
message - Missing or invalid url parameter.
code - 195
Relevant discussions can be found on the Internet at:
http://www.google.co.jp/search?q=506c3b98 or
http://www.google.co.jp/search?q=1a380391
TwitterException{exceptionCode=[506c3b98-1a380391], statusCode=403, message=Missing or invalid url parameter., code=195, retryAfter=-1, rateLimitStatus=RateLimitStatusJSONImpl{remaining=178, limit=180, resetTimeInSeconds=1595908836, secondsUntilReset=897}, version=4.0.7}
回答2件
あなたの回答
tips
プレビュー