매일 날짜별로 업데이트되는 텍스트를 긁어오려고 합니다..
학교 급식 식단 어플을 만드려고 하거든요
어플 관련 개발에 처음이라서 하나도 모르겠네요..
초보에게 도움을 주세요..
http://www.seonyoo.hs.kr/index/index.do
우측 중반에 나오는 식단정보인데, 시험기간이라 현재는 식단정보가 없네요..
매일 업데이트 되는데, 실시간으로 인터넷을 통해서 이 텍스트를 내려받고싶습니다..
어떻게 해야 좋을까요..?
보통 jericho라이브러리를 이용해 html의 내용을 체계적으로 분리해서 나누고 원하는 값을 뽑아내는데
아주 단순무식한 방법으로 그냥 임시 webview에다 홈페이지 내용을 뿌린다음에 webview내용(content)을 긁어온다음
태그등 다 날려버리고 텍스트만 뽑아서 그걸 표시해주는 방법이 제일 단순한것 같습니다.
xcode경우 uiwebview에서 html소스만 얻는 함수가 있는데 안드로이드도 될겁니다.
html에서 순수히 텍스트만 얻는 방법은
// html에서 텍스트만 빼내기
public static String getHtml2OnlyText(String content) {
Pattern SCRIPTS = Pattern.compile("<(no)?script[^>]*>.*?</(no)?script>",Pattern.DOTALL);
Pattern STYLE = Pattern.compile("<style[^>]*>.*</style>",Pattern.DOTALL);
Pattern TAGS = Pattern.compile("<(\"[^\"]*\"|\'[^\']*\'|[^\'\">])*>");
Pattern nTAGS = Pattern.compile("<\\w+\\s+[^<]*\\s*>");
Pattern ENTITY_REFS = Pattern.compile("&[^;]+;");
Pattern WHITESPACE = Pattern.compile("\\s\\s+");
Matcher m;
m = SCRIPTS.matcher(content);
content = m.replaceAll("");
m = STYLE.matcher(content);
content = m.replaceAll("");
m = TAGS.matcher(content);
content = m.replaceAll("");
m = ENTITY_REFS.matcher(content);
content = m.replaceAll("");
m = WHITESPACE.matcher(content);
content = m.replaceAll(" ");
return content;
}




HTML 파싱을 해야 함다..
HTML 파싱 정보는
http://www.androidpub.com/index.php?_filter=search&mid=android_dev_info&search_target=title&search_keyword=html&document_srl=252335