웹페이지에서 파싱하기 예제를 진행하겠습니다.
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 text= tagVal .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 text= tagVal .select("a").html();
System.out.println( "tagVal : " + tagVal );
System.out.println( "text : " + text );
}
}
'IT > JAVA' 카테고리의 다른 글
java - 리스트 관련 / requestbody 한글깨짐 (0) | 2018.07.18 |
---|---|
java 배열 순서 뒤집기. (0) | 2018.06.08 |
java - 메모장에 text 저장하기 (0) | 2018.02.07 |
이클립스 설치 및 java프로젝트 실행 (0) | 2018.01.06 |
java연산자와 연산식 (0) | 2018.01.05 |