Jsoup - 一个类中的多个css样式&元素数量

时间:2016-01-31 12:19:44

标签: jsoup

 <div class="opomnikRight">
                <div>
                    <p class="contentTitle">Institucija</p>
                    <a href="/drzava-in-druzba/javni-sektor/podrobnosti-institucije.html?id=2322">UPRAVNA ENOTA RADOVLJICA</a>
                </div>
                <div class="marginTop20">
                    <p class="contentTitle">Št. zadeve</p>
                    <p>330 - 63 / 2016</p>
                </div>
                <div class="spacer10">
                    <p class="contentTitle">Št. dokumenta</p>
                    <p>330 - 63 / 2016 - 6</p>
                </div>
                <div>
                    <p class="contentTitle">Datum in število dni objave</p>
                        <p>29. 1. 2016 (objava do 28. 2. 2016)</p>
                </div>
            </div>

代码:

String html = upper html;
doc = Jsoup.parse(html);
divs = doc.getElementsByClass("opomnikRight");
  1. divs.get(0).getElementsByTag("div").size(); 给了我5个??
  2. divs = doc.getElementsByClass(“opomnikRight”); divs = doc.getElementsByClass("opomnikRight foo");

    第二行不起作用,如何处理这种情况。据我所知,这是合法的: class =“opomnikRight foo”,它在html中也有效

1 个答案:

答案 0 :(得分:0)

关于1:

根据docsgetElementsByTag方法选择与给定名称匹配的所有标记,包括顶级,因此您获得外部div以及所有包含的div:

  

public Elements getElementsByTag(String tagName)

     

查找元素,   使用指定的标记包含并递归地在此元素下   名。

关于2:

可以使用CSS slector语法选择多个类。这里的类由其名称和前一个点定义。所以你会发现这样的元素:

Elements divs = doc.select(".opomnikRight.foo");