如何使用jsoup访问java中的子元素的属性?

时间:2016-07-28 17:21:21

标签: java html parsing jsoup

我们假设HTML文件的格式为

<div>
   <a href"something" title"something"></a>
</div>

我使用jsoup来获取所有div标签,我只想访问div的子元素。我使用了.html()方法,但它返回一个字符串,我无法使用Elements下的方法进一步操作它。

2 个答案:

答案 0 :(得分:2)

由于您已经将div作为元素,因此使用CSS选择器查找子元素,然后使用attr(String)来访问属性。

Elements divs = doc.select("div");
for (Element div : divs)
    String href = div.select("a").first().attr("href");

答案 1 :(得分:1)

试试这个例子

  String html = "<p>An <a href='http://example.com/'><b>example</b></a> link.</p>";
        Document doc = Jsoup.parse(html);
        Element link = doc.select("a").first();

        String text = doc.body().text(); // "An example link"
        String linkHref = link.attr("href"); // "http://example.com/"
        String linkText = link.text(); // "example""

        String linkOuterH = link.outerHtml(); 
            // "<a href="http://example.com"><b>example</b></a>"
        String linkInnerH = link.html(); // "<b>example</b>"