簡體   English   中英

使用 Jsoup 獲取第 n 個子元素

[英]Get n-th child Element with Jsoup

例如一個網站有這樣的代碼:

<div>
    <div>
        first
    </div>
    <div>
        second
    </div>
    <div>
        third
    </div>
</div>

我想用“Jsoup”獲取“第二個”div 文本,它沒有屬性或類。

有幾種方法可以做到這一點。 select返回擴展ArrayList<Element>Elements實例,因此您可以選擇所有子 div 並在指定索引處選擇一個(從 0 開始),例如

 String html = 
        "<div>\n" +
        "    <div>\n" +
        "        first\n" +
        "    </div>\n" +
        "    <div>\n" +
        "        second\n" +
        "    </div>\n" +
        "    <div>\n" +
        "        third\n" +
        "    </div>\n" +
        "</div>";
Document doc = Jsoup.parse(html);
Elements select = doc.select("div > div");
System.out.println(select.get(1));

輸出:

<div>
  second 
</div>

您還可以使用:eq(n)選擇器(來自官方教程

查找兄弟索引等於 n 的元素; 例如表單輸入:eq(1)

喜歡

System.out.println(doc.select("div > div:eq(1)"));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM