-
003. HTML 파싱하기 - 속성읽기Java 2015. 7. 29. 17:32
속성읽기
1234567891011121314151617181920212223242526272829303132333435363738394041import java.io.IOException;import org.jsoup.Jsoup;import org.jsoup.nodes.Document;import org.jsoup.nodes.Element;import org.jsoup.select.Elements;// 속성으로 읽기public class Jsoup09 {public static void main(String[] args) {Document document = null;try {String url = "http://www.kma.go.kr/XML/weather/sfc_web_map.xml";document = Jsoup.connect(url).get();Elements date = document.select("weather");String dateStr = date.attr("year") + "년 ";dateStr += date.attr("month") + "월 ";dateStr += date.attr("day") + "일 ";dateStr += date.attr("hour") + "시";System.out.println(dateStr);Elements locals = document.select("local");for (Element local : locals) {String area = local.text();String desc = local.attr("desc");if(desc.trim().equals("-")) desc="";String ta = local.attr("ta");System.out.print(area +"(현재온도 : " + ta);System.out.println((!desc.equals("") ? ", " : "") + desc + ")");}} catch (IOException e) {e.printStackTrace();}}}cs 원본
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100<?xml version="1.0" encoding="UTF-8" standalone="no" ?><current xmlns="current"><weather year="2015" month="07" day="29" hour="16"><local stn_id="95" icon="" desc="-" ta="25.8" rn_hr1="61.0">철원</local><local stn_id="98" icon="" desc="-" ta="27.0" rn_hr1="12.9">동두천</local><local stn_id="99" icon="" desc="-" ta="27.5" rn_hr1="10.1">파주</local><local stn_id="100" icon="" desc="-" ta="23.0" rn_hr1="5.5">대관령</local><local stn_id="101" icon="04" desc="흐림" ta="26.6" rn_hr1="8.8">춘천</local><local stn_id="102" icon="17" desc="박무" ta="28.4" rn_hr1="0.2">백령도</local><local stn_id="104" icon="03" desc="구름많음" ta="30.0" rn_hr1="1.0">북강릉</local><local stn_id="105" icon="" desc="-" ta="30.1" rn_hr1="1.0">강릉</local><local stn_id="106" icon="" desc="-" ta="27.8" rn_hr1="3.0">동해</local><local stn_id="108" icon="04" desc="흐림" ta="28.2" rn_hr1="4.0">서울</local><local stn_id="112" icon="17" desc="박무" ta="28.0" rn_hr1="24.4">인천</local><local stn_id="114" icon="" desc="-" ta="29.0" rn_hr1="16.5">원주</local><local stn_id="119" icon="17" desc="박무" ta="28.8" rn_hr1="64.7">수원</local><local stn_id="121" icon="" desc="-" ta="25.4" rn_hr1="13.6">영월</local><local stn_id="127" icon="" desc="-" ta="28.2" rn_hr1="44.8">충주</local><local stn_id="129" icon="03" desc="구름많음" ta="29.0" rn_hr1="25.8">서산</local><local stn_id="130" icon="" desc="-" ta="28.6" rn_hr1="0.9">울진</local><local stn_id="131" icon="17" desc="박무" ta="29.7" rn_hr1="15.0">청주</local><local stn_id="133" icon="17" desc="박무" ta="30.1" rn_hr1="31.8">대전</local><local stn_id="135" icon="" desc="-" ta="30.2" rn_hr1="4.5">추풍령</local><local stn_id="136" icon="04" desc="흐림" ta="27.5" rn_hr1="17.0">안동</local><local stn_id="137" icon="" desc="-" ta="30.2" rn_hr1="21.2">상주</local><local stn_id="138" icon="02" desc="구름조금" ta="32.9" rn_hr1="0.4">포항</local><local stn_id="143" icon="04" desc="흐림" ta="30.7" rn_hr1="0.5">대구</local><local stn_id="146" icon="04" desc="흐림" ta="29.7" rn_hr1="2.3">전주</local><local stn_id="155" icon="02" desc="구름조금" ta="31.1" rn_hr1="0.0">창원</local><local stn_id="159" icon="17" desc="박무" ta="29.4" rn_hr1="2.5">부산</local><local stn_id="172" icon="" desc="-" ta="32.4" rn_hr1="0.0">고창</local><local stn_id="175" icon="" desc="-" ta="30.0" rn_hr1="0.1">진도(첨찰산)</local><local stn_id="185" icon="" desc="-" ta="27.8" rn_hr1="0.0">고산</local><local stn_id="201" icon="" desc="-" ta="27.3" rn_hr1="2.5">강화</local><local stn_id="202" icon="" desc="-" ta="27.1" rn_hr1="12.0">양평</local><local stn_id="203" icon="" desc="-" ta="28.8" rn_hr1="24.8">이천</local><local stn_id="211" icon="" desc="-" ta="25.1" rn_hr1="6.0">인제</local><local stn_id="212" icon="" desc="-" ta="27.8" rn_hr1="3.5">홍천</local><local stn_id="216" icon="" desc="-" ta="25.5" rn_hr1="5.3">태백</local><local stn_id="217" icon="" desc="-" ta="24.9" rn_hr1="11.5">정선군</local><local stn_id="221" icon="" desc="-" ta="25.9" rn_hr1="17.0">제천</local><local stn_id="226" icon="" desc="-" ta="28.2" rn_hr1="17.0">보은</local><local stn_id="232" icon="" desc="-" ta="30.0" rn_hr1="22.0">천안</local><local stn_id="235" icon="" desc="-" ta="28.8" rn_hr1="5.3">보령</local><local stn_id="236" icon="" desc="-" ta="30.8" rn_hr1="8.5">부여</local><local stn_id="238" icon="" desc="-" ta="31.3" rn_hr1="11.0">금산</local><local stn_id="243" icon="" desc="-" ta="32.5" rn_hr1="0.1">부안</local><local stn_id="245" icon="" desc="-" ta="33.1" rn_hr1="0.0">정읍</local><local stn_id="248" icon="" desc="-" ta="30.1" rn_hr1="0.5">장수</local><local stn_id="251" icon="" desc="-" ta="32.5" rn_hr1="0.5">고창군</local><local stn_id="253" icon="" desc="-" ta="33.2" rn_hr1="0.0">김해시</local><local stn_id="254" icon="" desc="-" ta="33.1" rn_hr1="0.3">순창군</local><local stn_id="255" icon="" desc="-" ta="32.4" rn_hr1="0.0">북창원</local><local stn_id="257" icon="" desc="-" ta="32.6" rn_hr1="0.0">양산시</local><local stn_id="261" icon="" desc="-" ta="29.8" rn_hr1="0.0">해남</local><local stn_id="263" icon="" desc="-" ta="32.5" rn_hr1="0.0">의령군</local><local stn_id="264" icon="" desc="-" ta="32.9" rn_hr1="0.2">함양군</local><local stn_id="271" icon="" desc="-" ta="25.3" rn_hr1="11.0">봉화</local><local stn_id="272" icon="" desc="-" ta="27.9" rn_hr1="20.0">영주</local><local stn_id="273" icon="" desc="-" ta="27.7" rn_hr1="17.5">문경</local><local stn_id="276" icon="" desc="-" ta="27.9" rn_hr1="1.5">청송군</local><local stn_id="277" icon="" desc="-" ta="28.9" rn_hr1="1.0">영덕</local><local stn_id="278" icon="" desc="-" ta="27.9" rn_hr1="0.5">의성</local><local stn_id="279" icon="" desc="-" ta="28.8" rn_hr1="5.2">구미</local><local stn_id="281" icon="" desc="-" ta="31.0" rn_hr1="2.0">영천</local><local stn_id="283" icon="" desc="-" ta="32.8" rn_hr1="0.3">경주시</local><local stn_id="284" icon="" desc="-" ta="32.2" rn_hr1="0.0">거창</local><local stn_id="288" icon="" desc="-" ta="33.5" rn_hr1="0.0">밀양</local><local stn_id="162" icon="" desc="-" ta="29.1">통영</local><local stn_id="184" icon="01" desc="맑음" ta="33.9">제주</local><local stn_id="90" icon="" desc="-" ta="24.8">속초</local><local stn_id="140" icon="" desc="-" ta="30.7">군산</local><local stn_id="168" icon="02" desc="구름조금" ta="29.5">여수</local><local stn_id="266" icon="" desc="-" ta="34.2">광양시</local><local stn_id="260" icon="" desc="-" ta="34.1">장흥</local><local stn_id="165" icon="02" desc="구름조금" ta="31.6">목포</local><local stn_id="247" icon="" desc="-" ta="32.4">남원</local><local stn_id="152" icon="02" desc="구름조금" ta="34.3">울산</local><local stn_id="268" icon="" desc="-" ta="30.8">진도군</local><local stn_id="170" icon="" desc="-" ta="29.3">완도</local><local stn_id="189" icon="" desc="-" ta="29.2">서귀포</local><local stn_id="244" icon="" desc="-" ta="32.0">임실</local><local stn_id="188" icon="" desc="-" ta="30.8">성산</local><local stn_id="115" icon="04" desc="흐림" ta="28.5">울릉도</local><local stn_id="285" icon="" desc="-" ta="33.7">합천</local><local stn_id="259" icon="" desc="-" ta="31.5">강진군</local><local stn_id="174" icon="" desc="-" ta="33.3">순천</local><local stn_id="156" icon="03" desc="구름많음" ta="32.5">광주</local><local stn_id="192" icon="" desc="-" ta="31.7">진주</local><local stn_id="262" icon="" desc="-" ta="31.3">고흥</local><local stn_id="295" icon="" desc="-" ta="33.5">남해</local><local stn_id="258" icon="" desc="-" ta="32.8">보성군</local><local stn_id="294" icon="" desc="-" ta="28.7">거제</local><local stn_id="169" icon="17" desc="박무" ta="27.0">흑산도</local><local stn_id="252" icon="" desc="-" ta="32.3">영광군</local><local stn_id="289" icon="" desc="-" ta="32.8">산청</local></weather></current>cs 결과
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495962015년 07월 29일 17시철원(현재온도 : 26.1)동두천(현재온도 : 27.0)파주(현재온도 : 26.9)대관령(현재온도 : 23.2)춘천(현재온도 : 27.0, 흐림)백령도(현재온도 : 27.4, 박무)북강릉(현재온도 : 30.0, 구름많음)강릉(현재온도 : 31.0)동해(현재온도 : 27.2)서울(현재온도 : 28.5, 흐림)인천(현재온도 : 28.0, 박무)원주(현재온도 : 28.7)수원(현재온도 : 29.4, 박무)영월(현재온도 : 26.0)충주(현재온도 : 28.6)서산(현재온도 : 28.4, 구름조금)울진(현재온도 : 29.6)청주(현재온도 : 30.5, 박무)대전(현재온도 : 31.0, 구름많음)추풍령(현재온도 : 29.1)안동(현재온도 : 28.0, 흐림)상주(현재온도 : 31.1)포항(현재온도 : 32.9, 구름많음)대구(현재온도 : 31.9, 구름많음)전주(현재온도 : 31.1, 구름많음)창원(현재온도 : 30.1, 구름조금)부산(현재온도 : 28.6, 박무)고창(현재온도 : 31.9)진도(첨찰산)(현재온도 : 29.3)고산(현재온도 : 27.0)강화(현재온도 : 27.7)양평(현재온도 : 27.5)이천(현재온도 : 27.6)인제(현재온도 : 25.1)홍천(현재온도 : 27.1)태백(현재온도 : 26.3)정선군(현재온도 : 25.7)제천(현재온도 : 25.6)보은(현재온도 : 29.0)천안(현재온도 : 31.3)보령(현재온도 : 27.9)부여(현재온도 : 30.3)금산(현재온도 : 30.9)부안(현재온도 : 31.7)정읍(현재온도 : 33.3)장수(현재온도 : 30.0)고창군(현재온도 : 32.5)김해시(현재온도 : 31.9)순창군(현재온도 : 33.1)북창원(현재온도 : 30.3)양산시(현재온도 : 32.0)해남(현재온도 : 29.1)의령군(현재온도 : 31.9)함양군(현재온도 : 33.3)봉화(현재온도 : 25.5)영주(현재온도 : 28.3)문경(현재온도 : 27.6)청송군(현재온도 : 28.7)영덕(현재온도 : 29.4)의성(현재온도 : 28.7)구미(현재온도 : 29.6)영천(현재온도 : 30.2)경주시(현재온도 : 32.6)거창(현재온도 : 30.6)밀양(현재온도 : 31.9)통영(현재온도 : 28.2)제주(현재온도 : 33.2, 맑음)속초(현재온도 : 25.9)군산(현재온도 : 30.5)여수(현재온도 : 29.2, 구름조금)광양시(현재온도 : 33.6)장흥(현재온도 : 33.5)목포(현재온도 : 31.2, 맑음)남원(현재온도 : 32.4)울산(현재온도 : 33.8, 구름많음)진도군(현재온도 : 30.1)완도(현재온도 : 29.6)서귀포(현재온도 : 27.5)임실(현재온도 : 32.4)성산(현재온도 : 29.9)울릉도(현재온도 : 27.9, 흐림)합천(현재온도 : 33.5)강진군(현재온도 : 30.1)순천(현재온도 : 33.4)광주(현재온도 : 32.0, 구름많음)진주(현재온도 : 31.6)고흥(현재온도 : 30.8)남해(현재온도 : 32.7)보성군(현재온도 : 33.1)거제(현재온도 : 29.0)흑산도(현재온도 : 26.1, 박무)영광군(현재온도 : 31.5)산청(현재온도 : 32.3)cs Element의 모든 속성읽기
123456789101112131415161718192021222324252627282930313233import java.io.IOException;import org.jsoup.Jsoup;import org.jsoup.nodes.Attribute;import org.jsoup.nodes.Attributes;import org.jsoup.nodes.Document;import org.jsoup.select.Elements;// 속성으로 읽기public class Jsoup10 {public static void main(String[] args) {Document document = null;try {String url = "http://www.kma.go.kr/XML/weather/sfc_web_map.xml";document = Jsoup.connect(url).get();// Element의 모든 속성읽기Elements date = document.select("weather");// attributes()로 모든 속성읽기Attributes attributes = date.get(0).attributes();for(Attribute a : attributes){System.out.println(a.getKey() + " : " + a.getValue());}} catch (IOException e) {e.printStackTrace();}}}cs 결과
1234year : 2015month : 07day : 29hour : 17cs 'Java' 카테고리의 다른 글
005. HTML 파싱하기 - 네이버 실시간 급상승 검색어 (0) 2015.07.30 004. HTML 파싱하기 - 다음 실시간 이슈 (0) 2015.07.30 002. HTML 파싱하기 - 태그읽기 (0) 2015.07.29 001. HTML 파싱하기 - 준비하기 (0) 2015.07.29 QR코드 생성하기 (0) 2015.07.29 댓글