안드로이드 정말 초보입니다.
단기간 내에 간단한 앱이라도 만들어보고자 노력하고 있습니다.
웹페이지를 파싱하는 것 중에 외부 라이브러리 들이 많은데
검색을 해도, 따라해보아도 도저히 안되는 것입니다.
그러니 간단한 프로젝트 하나 부탁드립니다.
웹 페이지의 특정 부분을 파싱해서 보여주면 되는 예제 부탁합니다 ㅠㅠ..
예제만 보내주시면 이해는 알아서 하겠나이다 ㅠㅠ
arnoa@naver.com 으로 보내 주시면 감사하겠습니다.
보내주신 분
대박 나실 거에요 ㅠㅠ
어떻게든 하면 결과는 나올텐데 말이지요...
꼭 html 파싱법을 사용안해도 되구요...
전 아예 사용법을 몰라서 java 정규식을 사용 했습니다.
html 소스를 안드로이드에서 가지고 와서 잘라서 쓰는 방식이죠...
mIndexTaltin_Name_str = strCity.indexOf("<tr>");
mIndexTaltin_Name_end = strCity.indexOf("</td>");
strTaltin_Name_Total = strCity.substring(mIndexTaltin_Name_str, mIndexTaltin_Name_end + 5);
mIndexTaltin_Name_str = strTaltin_Name_Total.indexOf("????");
mIndexTaltin_Name_end = strTaltin_Name_Total.indexOf("</a>");
strTaltin_Name = strTaltin_Name_Total.substring(mIndexTaltin_Name_str+4, mIndexTaltin_Name_end);
이런식으로 말이지요...
무조건 편한 방식만 찾으시는거 보다 이렇게 맨땅에 해딩해 보시는것도 도움이 많이 되실겁니다...
(아... 저렇게 무식한 방법으로 해도 라이브러리를 참조해서 하는 방식과 속도차이는 별루 없더군요...)




버스 어플 만드신 형규님 블로그인데요 사이트 스크랩핑 기법이 있습니다.
http://hyeongkyu.net/110087913456
http로 데이터 받는것은 인터넷에 많습니다.
간단히
String DownloadHtml(String addr, String method){
StringBuilder html = new StringBuilder();
try{
URL url = new URL("addr);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
if(conn != null){
conn.setConnectTimeout(10000);
conn.setUseCaches(false);
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestMethod(method);
if(conn.getResponseCode() == HttpURLConnection.HTTP_OK){
BufferedReader br = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
for (;;){
String line = br.readLine();
if(line == null) break;
html.append(line + 'n');
}
br.close();
}
conn.disconnect();
}
}
catch(Exception ex){;}
return html.toString();
}
이것은 제가 쓰는 html다운로드 로직입니다. 저걸로 웹페이지 긁어와서 형규님 사이트의 스크래핑 기법을 참고하시면 충분히 만드시리라 생각합니다. 즐프하세요..