我已经查看了堆栈溢出,我发现了以下帖子:
但我仍然有点困惑。
我所拥有的是一个html表,其中包含一些具有不同日期的<tbody>
标记中的一些:
<tr>
<td>
<nobr>Fri</nobr>
</td>
<td>
<nobr>Sep 20</nobr>
</td>
<td>
<nobr>4:00 PM</nobr>
</td>
<td>
Practice </td>
</tr>
表的ID是“ gymschedule ”。
到目前为止,我可以使用JSoup获取表格,我可以使用JSoup在webview中显示它。
我需要在第二个<nobr>
中获取第二个<td>
的文本,并对表格中的每个其他<tr>
个标记组执行此操作< /强>
答案 0 :(得分:2)
我不知道原始资源看起来完全是什么,但这应该有效。
您可以使用CSS选择器选择文档中的特定标记,并使用 伪选择器 指定它们应具有的属性。
如果您只想选择多个序列中第一个的<tr>
- 标记,则可以使用tr:eq(0)
选择器。
在你的情况下,你会得到类似的东西:
doc = Jsoup.parse(html, "", Parser.xmlParser());
Elements elements = doc.select("tr td:eq(1) nobr");
for (Element e : elements) {
System.out.println(e.text());
}
将打印出来
Sep 20
由于我不知道您的完整源代码是什么样的,您可能可以使用默认的HTML解析器Jsoup.parse(html);
,但这不适用于您提供的代码段。
其他伪选择器的示例可以是
:lt(0) //Less than
:gt(0) //Greater than
我建议你阅读使用selector-syntax。