2012-01-18 63 views
2

使用JSoup來解析HTML響應。我有多個Div標籤。我必須根據ID選擇Div標籤。JSoup根據標題選擇Div和基於標題的href

我的僞代碼如下所示,

Document divTag = Jsoup.connect(link).get(); 
Elements info = divTag.select("div#navDiv"); 

其中navDiv是ID。但它似乎沒有工作。

另外我想選擇HREF裏面的基於一些標題,其中hrefTitle []將字符串數組。所以,當迭代href時,我會檢查標題是否存在於字符串數組中,如果是的話我會將它們添加到列表中否則忽略。我如何選擇div內的href?和如何選擇標題?任何輸入非常讚賞。

+2

請發表您試圖解析失敗或沒有做你期望的HTML的一個樣本。它會幫助你更輕鬆地調試這個問題。此外,您正遇到麻煩的_actual_代碼(而非僞代碼)也很有幫助。 – cdeszaq 2012-01-18 15:34:23

回答

1

但它似乎沒有工作。

應該工作。證明:

Document doc = Jsoup.parse("<html><body><div/>" + 
    "<div id=\"navDiv\">" + 
     "<a href=\"href1\">link1</a>" + 
     "<a href=\"href2\">link2</a><" + 
    "</div></body></html>"); 
Element div = doc.select("div#navDiv").first(); 

現在,我們可以選擇具有(例如)一個href屬性,其值是href2div內的a元件:

System.out.println(div.select("a[href=href2]")); 

輸出:

<a href="href2">link2</a> 

你可以在這裏找到完整的選擇器語法: