我有一个.span6>h6
元素列表,可能存在也可能不存在,具体取决于用户是否在其个人资料页面上填写了该选项。我想得到每个选项的价值(如果它们存在)。
这些选项的值作为.span6>h6
标记存储在每个<pre>
元素中。我需要获取每个h6
元素,读取其内容,并为每个选项存储在其下方元素中包含的值,位于正确的位置。
这是我想要做的一个例子。
<div class="row">
<div class="span6">
<h6>Gender</h6>
<pre>Male</pre>
</div>
<div class="span6">
<h6>Location</h6>
<pre>Someplace</pre>
</div>
<div class="span6">
<h6>Occupation</h6>
<pre>Figuring out this problem</pre>
</div>
<div class="span6">
<h6>Interests</h6>
<pre>Figuring out this problem</pre>
</div>
</div>
另一个深度示例,以防我的第一个令人困惑。如果h6
元素的内容为“Gender”,则获取下一个元素<pre>
并将文本存储在某处。
任何帮助将不胜感激,提前谢谢!
答案 0 :(得分:0)
我没有测试它,但我认为以下内容可以正常工作:
Elements els = Jsoup.parse(html).select( ".span > h6" );
for (Element el : els) {
String option = el.text();
String value = el.nextElementSibling().text();
}
.nextElementSibling()
将获得h6
之后的第一个元素;如果您认为自己需要具体并且只获得pre
个兄弟姐妹,则可以使用以下内容替换该行:
String value = el.siblingElements().select( "pre" ).first().text();