Jsoup 라이브러리를 사용하여 KBO 공식 사이트에서 팀 순위를 파싱하여 콘솔에 출력하는 코드. 처음 해보는 파싱이라 이것저것 해보는데 신기하다. 아직 데이터 다루기가 어설프고 마음대로 안되는데 갖고 놀다보면 금방 적응될듯. 나중에 안드로이드 어플리케이션에도 적용해 볼 예정. 코드는 계속 수정 중...
Jsoup 라이브러리 다운로드 :: https://jsoup.org/download
1차 수정 (17-11-06) :: 처음으로 받아 온 데이터 tex를 두 개의 스트링 버퍼 rank(순위표), winlose(승패표) 로 분리 후 각각 출력.
- Main.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | import java.io.IOException; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; public class Main { public static void main(String args[]) throws Throwable { try { Document doc = Jsoup.connect("http://www.koreabaseball.com/TeamRank/TeamRank.aspx").get(); //Elements contents = doc.select("div.aspNetHidden"); //String text = contents.text(); String text = doc.select("table").text(); StringBuffer tex = new StringBuffer(text); tex.insert(0, "******리그순위표******\n"); int Check = 0; int CheckTeam = 0; int i = 0; for(i = 0 ; CheckTeam < 11 ; i++) { if(tex.charAt(i) == ' ') Check += 1; if(Check == 12) { CheckTeam += 1; Check = 0; tex = tex.insert(i+1, "\n"); } } String rank = new String(tex.substring(0,i)); StringBuffer winlose = new StringBuffer(tex.substring(i)); winlose.insert(0, "\n\n******팀간승패표******"); int j = 0; Check = 0; CheckTeam = 0; for(Check = 0; CheckTeam < 1 ; j++) { if(winlose.charAt(j) == ' ') Check += 1; if(Check == 22) { winlose = winlose.insert(j+1, "\n"); CheckTeam += 1; } } Check = 0; CheckTeam = 0; for(Check = 0; CheckTeam < 9; j++) { if(winlose.charAt(j) == ' ') Check += 1; if(Check == 12) { winlose = winlose.insert(j+1, "\n"); Check = 0; CheckTeam += 1; } } System.out.println(rank); System.out.println(winlose); //System.out.println(tex); // 12개마다 끊어야 함 //System.out.println(doc); } catch (IOException e) { e.printStackTrace(); } } } | cs |
- 콘솔 출력화면
- 참고:
반응형
'이론 > JAVA' 카테고리의 다른 글
주소록 만들기 - 자바 스터디 3회차 과제 (0) | 2017.11.17 |
---|---|
로또 생성기 - 자바 스터디 2회차 과제 (0) | 2017.10.13 |
직접 입력하는 계산기 만들기 - 자바 스터디 1회차 과제 (0) | 2017.09.30 |
댓글