2013-10-13 94 views
0

嘿,夥計們我剛剛開始使用Jsoup,並且有一個小表問題。 我想解析來自這個網站的汽車細節 http://mywheels.ie/car-history-check/free-car-check-results/?VRN=00c31865 但不知道該怎麼做。有人能告訴我如何解決表格並從中複製至少一個元素?在此先感謝安卓與Jsoup使用表

Elements table = doc.select("table"); 
Elements row = doc.select("table[width=\"100%\"] [cellspacing=\"0px\"] [cellpadding=\"0px\"]"); 
Iterator<Element> iterator = row.listIterator(); 
while(iterator.hasNext()) 
{ 
     Element element = iterator.next(); 
     String id = element.attr("id"); 
     String classes = element.attr("class"); 
     String value = element.text(); 
     System.out.println("Id : " + id + ", classes : " + classes+ ", value : " + value); 
} 
+0

你的具體問題是什麼? –

+0

那麼代碼將不會顯示任何輸出,我不知道我在做什麼錯誤 – Michal

回答

1

我可以推薦你創建一個JAVA項目來測試Jsoup,因爲它是更快的方式。 我完全重構了你的代碼。我使用描述性變量名稱來更容易理解。下面是代碼:

Document doc; 
    try { 
     doc = Jsoup.connect("http://mywheels.ie/car-history-check/free-car-check-results/?VRN=00c31865").get(); 

     Element containingDiv = doc.select(".free-vehicle-report-topDiv").first(); 
     Elements table = containingDiv.select("table"); 
     Elements rows = table.select("tr"); 

     for (Element row : rows) { 
      System.out.println("label: "+row.child(0).text()+", value:"+row.child(1).text()); 
      // LOG.i("label: "+row.child(0).text()+", value:"+row.child(1).text()); 
     } 


    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

我在JAVA測試也,在Android中你可以註釋掉Log.i方法調用代替的System.out.println。 這並不困難。祝你好運。