我是Java上的JSoup的新手,想询问几个问题。鉴于我希望得到的页面的HTML代码是
<td width="70%" class="row1">
<b>4</b>
<br />( 0 posts per day / 0.00% of total forum posts )
</td>
我的问题是我想得到数据4,但我得到的输出是4(每天0篇帖子/论坛帖子总数的0.00%)
这是我的Java代码
Iterator <Element> element = totalPost.select("td[width=70%][class=row1]").iterator();
System.out.println(element.next().text());
很抱歉,如果我的问题不够明确。
答案 0 :(得分:0)
如果在添加<table>
标记之后没有<table>
,这对我来说确实不适合我:
<table>
<td width="70%" class="row1">
<b>4</b>
<br />( 0 posts per day / 0.00% of total forum posts )
</td>
</table>
您可以尝试通过添加打印元素或整个文档来检查HTML是否被正确解析:
System.out.println("totalPost:" + totalPost.html());
System.out.println("doc:" + doc.html());
答案 1 :(得分:0)
以下是一个例子:
final String html = "<td width=\"70%\" class=\"row1\">\n"
+ "<b>4</b>\n"
+ "<br />( 0 posts per day / 0.00% of total forum posts )\n"
+ "</td>";
Document doc = Parser.xmlParser().parseInput(html, ""); // Alternative: Jsoup.parse(...) or connect to a website
Element bTag = doc.select("td > b").first();
System.out.println(bTag.text());
这将打印4
。