2012-08-13 120 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); 
}