반응형

웹페이지에서 파싱하기 예제를 진행하겠습니다.

jsoup라는 라이브러리를 사용하였습니다.


https://jsoup.org 에서 dependency 및 jar파일을 다운로드 가능하며 

각 상세정보를 확인하실수 있습니다.


처음에는 pom.xml에서 dependency 를 추가해주거나 jar파일을 넣어주세요.

제가 사용한 dependency 소스는 아래와 같습니다.


<dependency>

<!-- jsoup HTML parser library @ https://jsoup.org/ -->

<groupId>org.jsoup</groupId>

<artifactId>jsoup</artifactId>

<version>1.10.3</version>

</dependency>


클래스 파일을 생성해 주세요.

그리고 메인 생성후 익셉션까지 추가해줍니다.


public class Sample {

public static void main(String[] args) throws Exception {

}

}


이제 파싱할 홈페이지 주소와 홈페이지에서 파싱할 태그등을 입력해줄겁니다.

주소를 설정해주세요. 변수는 파란색으로 바꿔놨습니다.

Document url = Jsoup.connect("http://홈페이지 주소").get();

파싱할 html태그와 id나 class값을 입력해주세요.

Elements tagVal = url.select("div.info h4 a"); // class가 info인 div태그 안쪽 -> h4 태그 안쪽 -> a태그를 가져오겠다는 의미입니다.

이제 파싱한 태그에서 text값만 추출해야겠죠.

위에 출력값은 <a id='www'>예제입니다.</a> 이런식으로 출력됩니다.

String texttagVal .select("a").html();  // 이렇게 주시면 a태그의 text값만 가져올수있습니다.

출력값은 예제입니다 만 추출이 될것입니다.

이거만 가지고 응용을 하시면 간단한 정보들은 충분히 파싱하실수 있으실 겁니다.


public class Sample {

public static void main(String[] args) throws Exception {

Document url = Jsoup.connect("http://홈페이지 주소").get();

Elements tagVal url.select("div.info h4 a");

String texttagVal .select("a").html();

System.out.println( "tagVal : " + tagVal );

System.out.println( "text : " + text );

}

}


반응형

+ Recent posts