2013-12-15 78 views
0

我試圖解析來自this table的數據。比方說,我想解析第二行中的第二個元素(稱爲SLO)。用Jsoup解析表格元素

enter image description here

我可以看到裏面有TR和SLO字TR甚至沒有一個ID或任何東西。我如何解析這個?

這是代碼:

class Title extends AsyncTask<Void, Void, Void> { 

    @Override 
    protected void onPreExecute() { 
     super.onPreExecute(); 

     tw1.setText("Loading..."); 
    } 

    @Override 
    protected Void doInBackground(Void... params) { 
      try { 
       Document doc = Jsoup.connect("https://www.easistent.com/urniki/cc45c5d0d303f954588402a186f5cdba5edb51d6/razredi/16515").get(); 
       Elements eles = doc.select(""); 
       title = eles.toString(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     return null; 
    } 

    @Override 
    protected void onPostExecute(Void result) { 
     super.onPostExecute(result); 
     tw1.setText(title); 
    } 

} 

我不知道要放什麼東西在doc.select( 「」);因爲我從來沒有像這樣分析過。我只解析了網頁的標題等。有人可以幫助我嗎?

回答

0

有很多信息供您使用,例如類名稱或標題屬性。您提供的網址不會爲我工作,我不能複製粘貼您的圖片的HTML代碼,所以我的例子中只顯示了基於其標題跨度解析:

String html = "<span title='Slovenscina'>SLO</span>"; 
Document doc = Jsoup.parse(html); 
Elements eles = doc.select("span[title=Slovenscina]"); 
String title = eles.text(); 
System.out.println(title); 

將輸出:

SLO 

這將適用於您提供的其他HTML的範圍。我建議你多讀一些關於Jsoup的selector-syntax

+0

他是非常正確的或直接從網站做** Elements eles = doc.select(「。text14 span [title =Slovenščina]:first」); ** – ImGeorge