jsoup 웹 데이터 추출

\ # \ # \ # jsoup 사용
가 져 오기 의존:
compile ‘org.jsoup:jsoup:1.10.3’
\ # \ # \ # JSoup 으로 과일 껍질 망 분석 - > 그룹의 데이터
  • 네트워크 에 비동기 진행 을 요청 합 니 다.
  • 신청 권한 에 주의 하 세 요.
  • JSOP. connect () 방법 을 사용 하려 면 이상 을 던 져 야 합 니 다.
  • 과일 껍질 망 분석:
  • 먼저 분석 이 필요 한 주 소 를 연결 하고 Jsoup 의 connect () 방법 을 사용 합 니 다.
  • //http://www.guokr.com/group/
            Document document = Jsoup.connect("http://www.guokr.com/group/").get();
            //System.out.println(document);
            Log.e(TAG, "parsingGuoKr:   " + document.title());//    
    
  • getElement sByClass () 방법 은 class 의 요 소 를 찾 고 보통 Elements 집합 을 되 돌려 줍 니 다.
  •     //  class    
        Elements titles = document.getElementsByClass("titles");
    
  • first () 방법 으로 집합 중의 첫 번 째 요 소 를 얻 습 니 다:
  •     //   titles      
        Element l1 = titles.first();
    
  • getElementsByTag () 방법 으로 탭 가 져 오기;
  •     //     li  
        Elements li = titles.first().getElementsByTag("li");//     li  
    
  • Elements 배열 을 옮 겨 다 니 며 title - link 블록 마다 제목 을 가 져 옵 니 다:
  • for (Element e : li) {
        //   title-link   ,        
        Element elementsByClass = e.getElementsByClass("title-link").first();
        ...
    
  • after () 방법 으로 탭 의 내용 을 가 져 오고 Element 로 돌아 갑 니 다.
  • 텍스트 () 방법 으로 텍스트 가 져 오기;
  • arrt () 사용 하기;방법 으로 하이퍼링크 가 져 오기;
  •     ...
        //  a          
        Element titleA = elementsByClass.after("a");
        System.out.println("  " + titleA.text());
        System.out.println("      " + titleA.attr("href"));
    }
    
  • Elements 하이퍼링크 가 져 오기:
  •     ...
        Elements title_imgs = e.getElementsByClass("title-imgs");
        for (Element imgs:title_imgs) {
            Elements title_img = imgs.getElementsByClass("title-img");
            Elements a = title_img.after("a");
    
            for (Element ima : a) {
                String aStr = ima.toString();
                int i1 = aStr.indexOf("(");
                int i2 = aStr.indexOf(")");
                System.out.println(aStr.substring(i1+1,i2));
            }
    }
    

    \ # \ # \ # 문자열 형식 Html 데 이 터 를 직접 분석 합 니 다.
  • Html. from Html (pStr) 방법 으로 String 유형 을 되 돌려 줍 니 다.
  •  final TextView tv = (TextView) findViewById(R.id.tv);
            Document document = Jsoup.connect("http://www.guokr.com/post/794784/").get();
            Element gbbcode_content = document.getElementsByClass("gbbcode-content").first();
    
            final String pStr = gbbcode_content.getElementsByTag("p").toString();
            System.out.println(pStr);
    
            runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    tv.setText(Html.fromHtml(pStr));
                }
            });
    

    좋은 웹페이지 즐겨찾기