2012-08-13 122 views
1

這是我第一次嘗試使用Jsoup。 我無法理解「選擇」操作。Jsoup選擇命令

Elements media = doc.select("[src]"); 

這意味着在作爲輸入給出的頁面中搜索src並選擇該行。 因此,我可以使用src.tagname,src.width和全部內容讀取該文本...

以下內容是什麼意思?

Elements links = doc.select("a[href]"); 
    Elements imports = doc.select("link[href]"); 

我有點糊塗了,你可以給我解釋一下什麼對[HREF]的意思,以及如何使用它

+1

它的說明文件中解釋說:http://jsoup.org/cookbook/extracting-data/selector-syntax它是隻是[CSS選擇器](http://www.w3.org/TR/2009/PR-css3-selectors-20091215/)。如果你已經有了一些基本的HTML/CSS體驗,那麼理解起來就容易多了。 – BalusC 2012-08-13 00:49:39

+0

謝謝你的問題是:如果你看到這個:http://en.wikipedia.org/wiki/States_and_territories_of_India。因爲我只想在印度各州擁有所有的名字。但也有其他表格,當我做doc.select(「區域[標題]」);我正在獲取所有表格信息。所以我正在尋找如果在選擇我可以告訴它如何僅用於特定的表 – 2012-08-13 01:48:23

回答

1
Elements links = doc.select("a[href]"); 

- >選擇所有a標籤都有效與屬性href

示例:<a href="something">...</a>

但是正如BalusC之前所說:看看documentation about selector syntax


「地區問題」:

doc.select("area[title]")選擇所有元素匹配這一點,而不是屬性!

如果你需要的所有名稱(=屬性title),您可以使用此:

Document doc = Jsoup.connect("http://en.wikipedia.org/wiki/States_and_territories_of_India").get(); 
Elements elements = doc.select("area[title]"); 

for(Element element : elements) 
{ 
    String title = element.attr("title"); 

    // Do something with the title 
    System.out.println(title); 
}