2014-12-09 2 views
3


twitter4j 스트리밍 API를 사용하여 트위터에서주기적인 데이터를 추출하고 싶습니다.
예 : 2014 년 3 월 3 일 ~ 2014 년 4 월 5 일 트윗 데이터를 원합니다. 시도했지만 예상 결과를 얻지 못했습니다, 또한 일부 솔루션에 대한 봤지만 해결하기 위해 접근 방식을 얻지 못했습니다.주기적인 데이터 추출 twitter4j에서 스팀 API

나는 다음 코드를 시도하고있다 :

public class Twitter_Data { 

    public static void main(String[] args) { 

     ConfigurationBuilder cb = new ConfigurationBuilder(); 
     cb.setDebugEnabled(true); 
     cb.setOAuthConsumerKey("myKey"); 
     cb.setOAuthConsumerSecret("mySecretCode"); 
     cb.setOAuthAccessToken("Token"); 
     cb.setOAuthAccessTokenSecret("secret token"); 
     TwitterStream twitterStream = new TwitterStreamFactory(cb.build()) 
       .getInstance(); 

     StatusListener listener = new StatusListener() { 
      @Override 
      public void onStatus(Status status) { 
       User user = status.getUser(); 

       // gets Username info 
       long userId = user.getId(); 
       String userNm = user.getName(); 
       System.out.println("User ID: " + userId); 
       System.out.println("User Name: " + userNm); 

       String profileLocation = user.getLocation(); 
       System.out.println(profileLocation); 

       long tweetId = status.getId(); 
       System.out.println(tweetId); 
       String content = status.getText(); 
       System.out.println(status.toString() + "\n"); 
      } 

     }; 
     FilterQuery fq = new FilterQuery(); 
     String keywords[] = { "Key word" }; 
     fq.track(keywords); 
     twitterStream.addListener(listener); 
     twitterStream.filter(fq); 

    } 

} 

어느 하나가 나를 도울 수있는이 코드를 주기적으로 데이터를 추출 할 수 있습니다. 미리 감사드립니다.

답변

2

twitter4j 스트리밍 API를 사용하여 트위터에서주기적인 데이터를 추출하고 싶습니다.

당신은 그것을 할 수 없습니다. Streaming API는 사용하기 시작한 트윗을위한 것입니다. 귀하의 예에서는 귀하의 키워드에 대한 트윗이 표시되어 사람들이 트위터를 강타하고 있습니다. Twitter API를 사용하면 특정 기간 동안 트윗을 가져올 수 없습니다.

+2

답장을 보내 주셔서 감사합니다. 트위터에서주기적인 데이터를 추출하려면 어떻게해야합니까? 데이터를 가져 오는 다른 방법이 있습니까? –

+0

[Gnip] (https://gnip.com) (유료) 또는 [Topsy] (http://topsy.com/)와 같은 다른 소스를 사용할 수 있으며 무료이며 [API] (https : /code.google.com/p/otterapi/) (사용법을 모르겠다. 미안) :) – FeanDoe