如何直接选择具有指定子项的节点

时间:2015-11-04 09:42:27

标签: jsoup

我有一个像这样的HTML文档:

<div class="jumbotron media">
    <img class="pull-left media-object" >
    <div class="media-body">
        <h2 class="media-heading">xxx</h2>
        <div>
            <em class="icon-time" title="act time"></em> 2015-11-29 14:00 ~ 2015-11-29 18:00
        </div>
        <div class="address">
            <em class="icon-place" title="act place"></em><a target="_blank" href="http://ooo">yyy</a>
        </div>
        <div>
            <em class="icon-statistics" title="act count"></em> zzz</div>
            <div>
                <a alt=""> </a>
            </div>
        </div>
    </div>
</div>

我想选择一个有em.icon-time孩子的div select target

如何在jsoup中编写选择器?

如果我使用:doc.select(“div:has(em.icon-time)”),我将获得以下快照的根元素: select result

1 个答案:

答案 0 :(得分:0)

我不知道如何获得匹配元素的直接父元素。但是如果你只想解决这个特殊问题,那么试试这个选择器:

  

DIV:具有(em.icon时间):不(:具有(DIV))

我只是添加了否定:not(:has(div))以避免将所有父div添加到根目录。

希望有所帮助!