给定 Twitter API 速率限制,如何获取至少 10,000 条推文?

How to grab at least 10,000 tweets given the Twitter API Rate Lmit?

如标题所示,鉴于 Twitter 有其自身的限制,我如何才能获取至少 10,000 条推文?

Twitter 每 15 分钟允许 180 个查询。所以我打算使用 TimerTimerTask 设置一个间隔并保持 运行 代码直到我得到 10,000 条这样的推文:

timer.schedule((TimerTask) getTweets("$FB up"),0,900000);

问题是,每 15 分钟它会返回与前 15 分钟相同的数据。我如何让它从前 15 分钟停止的地方继续?

下面是函数 getTweets(字符串项)

int wantedTweets = 10000;
        long lastSearchID = Long.MAX_VALUE;
        int remainingTweets = wantedTweets;
        Query query = new Query(term);
         try{ 

          while(remainingTweets > 0)
          {
            remainingTweets = wantedTweets - tweets.size();
            if(remainingTweets > 100)
            {
              query.count(100);
            }
            else
            {
             query.count(remainingTweets); 
            }
            QueryResult result = twitter.search(query);
            tweets.addAll(result.getTweets());
            Status s = tweets.get(tweets.size()-1);
            long firstQueryID = s.getId();
            query.setMaxId(firstQueryID);
            remainingTweets = wantedTweets - tweets.size();
          }

          for (int i=0 ; i < tweets.size() ; i++) {
               b = tweets.get(i);  
              //System.out.println(s);
              //System.out.println("@" + b.getUser().getScreenName() +  " - " + b.getText());
          }
        }
        catch(TwitterException te)
        {
          System.out.println("Failed to search tweets: " + te.getMessage());
        }
         return b;

改用twitter streaming API