从URL中考虑以下HTML。我需要先对文本进行搜索"学生1"并挑选相应的学校,在这种情况下是麻省理工学院的#39;。我如何在JSOUP中执行此操作?
<table>
<tbody>
<tr>
<td valign="top">
<div style="border-width:1px;border-color:#cccccc;border-style:solid;">
<table bordercolor="#483D8B">
<tbody>
<tr>
<th colspan="2" bgcolor="#483D8B" height="25"><font face="Verdana" size="2" color="white">MIT School</font></th>
</tr>
<tr>
<td width="120" height="15"><font face="Arial" size="2" color="black"> <b>Student 1</b> </font></td>
</tr>
</tbody>
</table>
到目前为止,我只能成功搜索文本。
System.out.println("This is :"+Jsoup.parse(url, timeout)
.select("b:containsOwn(Student 1");
我得到的输出是
<b>This is :Student 1</b>
我在网上找不到很多JSOUP的例子。对这个有任何帮助吗?
答案 0 :(得分:0)
我认为每个学生都有专门的桌子。然后,您可以尝试以下方法:
Element sibling = doc.select("b:containsOwn(Student 1)")
.first().parent().parent().parent().firstElementSibling();
System.out.println(sibling.select("th").text());
请注意,在这种情况下,我们只考虑第一个结果。你必须迭代所有包含&#39;学生1&#39;为了获取你想要的所有数据点。