안녕하세요. 오늘은 네이버 실시간 검색어 순위 HTML 파싱하기에 이어서
다음 실시간 이슈 HTML 파싱하기를 해볼려고 합니다.
다음 실시간 이슈가 존재하는 HTML 을 파싱해서
콘솔에 보여주는 간단한 프로그램을 만들어보려고 합니다.
그럼, 시작합니다.
- 개발 환경 : java 7
HTML 을 파싱하기 위해서 jsoup을 이용했습니다.
- 라이브러리 : jsoup-1.7.2.jar
- HTML 확인
우선 HTML 을 확인해 보겠습니다.
http://www.daum.net 로 이동해서 소스보기를 해보면 아래와 같이 실시간 이슈를
확인해 볼 수 있습니다.
위의 HTML 을 확인해보면 네이버 실시간 검색어를 파싱할 때보다 복잡해보이네요.
하지만 크게 어려울 것 같지는 않습니다.
다음 실시간 이슈 목록이 id 가 'realTimeSearchWord' 를 가지는 ol 태그에 감싸져 있고
각각에 검색어는 li 태그 안에 roll_text 를 클래스로 가지는 div 태그 안에 있는 내용을 이용하면 될 것 같습니다.
그런데 rank_dummy 를 클래스로 가지는 div 태그 안에 있는 내용이 겹치는 걸 볼 수 있습니다.
jsoup에서는 선택된 태그의 내용안에 동일한 id 가 존재할 경우 중복된 내용도 보여줍니다.
예를 들면, rank_dummy 를 클래스로 가지는 div 태그를 포함시켜서 검색어를 출력할 경우
결과는 '장민석'을 기대했지만 '장민석 장민석' 이런 식으로 나오게 됩니다.
그러므로 rank_dummy 를 클래스로 가지는 div 태그안에 내용은 파싱할 때 제외시키겠습니다.
그럼 HTML 파악은 끝났으니 구현해보겠습니다.
소스는 아래와 같습니다.
- DaumRealTimeRanking 클래스
- 결과화면
이상 jsoup 을 이용한 다음 실시간 이슈 HTML 파싱하기를 마치겠습니다.
'개발 Story > Programming' 카테고리의 다른 글
도로명주소 안내시스템 사이트에서 제공하는 우편번호 오픈 API (0) | 2016.01.07 |
---|---|
사이트 세션 유지 방법 (0) | 2015.10.30 |
네이버 실시간 검색어 순위 HTML 파싱하기 (9) | 2015.05.27 |
우체국 오픈API를 이용한 우편번호 검색하기 (7) | 2015.05.22 |
Comments