반응형
먼저 library 다운로드 받아서 폴더에 지정해주고
트위터 api 개발자에 들어가서 key 발급 후에
public void TwitterAPIConn() {
cb.setDebugEnabled(true)
.setOAuthConsumerKey("자신의 key")
.setOAuthConsumerSecret("자신의 key")
.setOAuthAccessToken("자신의 key")
.setOAuthAccessTokenSecret("자신의 key");
}
추가해주세여
public TwitterCrawling(ComponentService Component) {
try {
TwitterAPIConn();
Twitter twitter = new TwitterFactory(cb.build()).getInstance();;
String userName = "수집하고자 하는 페이지 아이디";
boolean checking = false;
for(int i=1;i<2;i++) {
ArrayList<crawlingDTO> Tlist = new ArrayList<>();
Paging page = new Paging (i, 100);//page number, number per page
ResponseList<Status> Statuses = twitter.getUserTimeline(userName, page);
for(Status s : Statuses) {
crawlingDTO c = new crawlingDTO();
//시간 설정
SimpleDateFormat format = new SimpleDateFormat("E MMM dd HH:mm:ss z yyyy", Locale.ENGLISH);
SimpleDateFormat tranSimpleFormat = new SimpleDateFormat("yyyy.MM.dd", Locale.ENGLISH);
Date date = format.parse(s.getCreatedAt().toString());
String dates = tranSimpleFormat.format(date);
c.setTitle("twitter");
c.setContents(s.getText());
System.out.println(s.getText());
c.setLink("https://twitter.com/greenjeonnam/status/"+s.getId());
c.setDate(dates);
c.setType("twitter");
System.out.println(s.getSource());
Tlist.add(c);
}
other.InsertDB(Tlist, Component);
if(checking) {break;}
}
}catch(Exception e) {
System.out.println("twitter에러 :" + e);
}
}
참 쉽죠?
반응형
댓글