본문 바로가기

웹개발

[Java] jsoup을이용한 html 파싱 쉽게하기/정규식은 저 멀리~

간혹 개발하다보면 html페이지를 긁어와서 내 입맛에 맞게 가공해야할 떄가 있다. 그럴때 흔히들 쓰는게

html을 읽어와서 정규식을 이용한 추출인데, 막강하긴 하지만. 그 정규식을 알기가 여간 까다로운게 아니다.

역시 선구자들이 존재하엿는데 바로 jsoup 이다. 아래사이트를 참조하자


http://jsoup.org/

http://jsoup.org/cookbook/extracting-data/selector-syntax


사용방법을 보면 url을 Documnet로 구성해주고 seletor해주는 내용인데 흡사 jquery에 selector와 사용법이 흡사하다


아래는 간단한 사용예제 



Document doc = Jsoup.connect("사이트주소").get();
			Elements tds = doc.select(".tbl_today2 li");
			
			for(Element e: tds){
				System.out.println(e.text());
				System.out.println(e.html());
			}


단 2~3줄의 코딩만으로도 파싱이 가능하다. 

위 예제를 설명하자면 사이트주소를 읽어와 tbl_today라는 class를 쓰는 elemnet안에 li태그의 내용을 파싱해오라는 얘기!

ㅎ아주 괜찮은 라이브러리다. 어려운 정규식을 외우지 않아도 된다는 사실하나만으로도 감사!


maven 사용자를 위한 repository 주소

<dependency>

<groupId>org.jsoup</groupId>

        <artifactId>jsoup</artifactId>

<version>1.6.3</version>

</dependency>