Jsoup:从锚标记中提取内部文本
Jsoup: Extracting innertext from anchor tag
这是我的问题。我有一个 html 内容:
内文
我需要提取 "innerText"。在 Jsoup 中尝试此操作时,我发现当 Jsoup 解析时,内部文本超出了锚标记。
这是我的代码
Document doc=Jsoup.parse("<div> <a href="#"> innerText </a> </div>");
System.out.println(doc.html());
输出:
<html>
<head></head>
<body>
<div >
<a href="#"></a>innerText
</div>
</body>
</html>
为什么 "innerText" 移到了锚标签之外?
您可以通过调用元素上的 text()
方法来访问文本。
Document doc = Jsoup.parse("<div> <a href=\"#\"> innerText </a> </div>");
System.out.println(doc.html());
Elements rows = doc.getElementsByTag("a");
for (Element element : rows) {
System.out.println("element = " + element.text());
}
顺便说一句。使用您发布的代码(和 JSoup 1.8.1)产生以下输出
<html>
<head></head>
<body>
<div>
<a href="#"> innerText </a>
</div>
</body>
</html>
这是我的问题。我有一个 html 内容: 内文 我需要提取 "innerText"。在 Jsoup 中尝试此操作时,我发现当 Jsoup 解析时,内部文本超出了锚标记。
这是我的代码
Document doc=Jsoup.parse("<div> <a href="#"> innerText </a> </div>");
System.out.println(doc.html());
输出:
<html>
<head></head>
<body>
<div >
<a href="#"></a>innerText
</div>
</body>
</html>
为什么 "innerText" 移到了锚标签之外?
您可以通过调用元素上的 text()
方法来访问文本。
Document doc = Jsoup.parse("<div> <a href=\"#\"> innerText </a> </div>");
System.out.println(doc.html());
Elements rows = doc.getElementsByTag("a");
for (Element element : rows) {
System.out.println("element = " + element.text());
}
顺便说一句。使用您发布的代码(和 JSoup 1.8.1)产生以下输出
<html>
<head></head>
<body>
<div>
<a href="#"> innerText </a>
</div>
</body>
</html>