2015년 1월 9일 금요일

[Java] Jericho을 이용한 네이버 실시간 검색어 파싱(Naver Real Rank Parsing)



Jericho을 이용한 

네이버 실시간 검색어 파싱

(Naver Real Rank Parsing)



활용예제


import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.util.List;

import net.htmlparser.jericho.Element;

import net.htmlparser.jericho.HTMLElementName;
import net.htmlparser.jericho.Source;

public class NaverTest {


              private final String NAVER_URL = "http://www.naver.com/";

              private Element realrank;

              public NaverTest() {


                            Source source = null;


                            try {

                                          InputStream is = new URL(NAVER_URL).openStream();
                                          source = new Source
                                                                      (new InputStreamReader(is, "utf-8"));
                                          source.fullSequentialParse();
                            } catch (IOException e1) {

                            }

                            realrank = source.getElementById("realrank");
                            // realrank는 실시간 검색어 id

                            List<Element> liTagList = realrank.getAllElements

                                                                                                  (HTMLElementName.LI);
                            // li 태그의 리스트(실시간 검색어 순위 리스트)

                            for (int i = 0; i < liTagList.size() - 1; i++) {

                            // 1위가 한번 더 출력되는 것을 막기 위해 liTagList.size() - 1 로 설정

                                          Element aTag = liTagList.get(i)

                                                                      .getFirstElement(HTMLElementName.A);

                                          String article = aTag.getAttributeValue("title");

                                          // 실시간 검색어 텍스트

                                          String articleHref = aTag.getAttributeValue("href");

                                          // 실시간 검색어 링크

                                          System.out.println(article + " - " + articleHref);

                            }
              }
}





댓글 없음:

댓글 쓰기