如何从'ul'标签获取文字?

时间:2014-11-18 06:43:14

标签: java jsoup octicons

我正在使用Java Jsoup来获取一些细节。

<ul class="vcard-details"> 
 <li class="vcard-detail" itemprop="homeLocation"><span class="octicon octicon-location"></span>Caldwell, Idaho, USA</li> 
 <li class="vcard-detail"><span class="octicon octicon-mail"></span><a class="email" href="mailto:jamisbuck@gmail.com">jamisbuck@gmail.com</a></li> 
 <li class="vcard-detail" itemprop="url"><span class="octicon octicon-link"></span><a href="http://blog.jamisbuck.org" class="url" rel="nofollow me">http://blog.jamisbuck.org</a></li> 
 <li class="vcard-detail"><span class="octicon octicon-clock"></span><span class="join-label">Joined on </span><time class="join-date" datetime="2008-02-28T17:37:32Z" day="numeric" is="local-time" month="short" year="numeric" title="Feb 28, 2008, 11:07 PM GMT+5:30">Feb 28, 2008</time></li> 
</ul>

我已经使用了上面的部分..

Element bio = doc.getElementsByClass("vcard-details").first();

我有什么方法可以获得“ Caldwell,Idaho,USA ”的文字吗? 我正在尝试使用类名'octicon octicon-location',因为我需要单独获取所有这些属性(仅当它们可用时)。

3 个答案:

答案 0 :(得分:1)

您想要使用的班级的跨度没有任何价值,因为它在文本“Caldwell,Idaho,Usa&#39;之前关闭”。在文件中。要访问li标签的内容,您可以使用以下代码。然后,您可以操纵字符串以摆脱Span标记。

var value = document.querySelector('li.vcard-detail').innerHTML;

答案 1 :(得分:1)

使用jsoup的selector syntax

Element first = doc.select("ul.vcard-details > li.vcard-detail").first();
System.out.println(first.text());

<强>输出:

Caldwell, Idaho, USA
  

我有什么方法可以获得文字

是:text()

答案 2 :(得分:0)

您可以使用以下代码

document.getElementsByClassName("vcard-detail")[0].innerHTML).split("</span>")[1]
相关问题