Java 使用Jsoup非递归地提取文本
这是我试图运行的代码:Java 使用Jsoup非递归地提取文本,java,html,jsoup,Java,Html,Jsoup,这是我试图运行的代码: String html = "<a href=\"/name/zola-1\">ZOLA <span class=\"tiny\">(1)</span></a>"; Document doc = Jsoup.parse(html); //connect to the page Element element = doc.getAllElements().first(); //recive the names elemen
String html = "<a href=\"/name/zola-1\">ZOLA <span class=\"tiny\">(1)</span></a>";
Document doc = Jsoup.parse(html); //connect to the page
Element element = doc.getAllElements().first(); //recive the names elements
System.out.println(element.text()); //prints "ZOLA (1)"
System.out.println(element.ownText()); // prints nothing
String html=”“;
Document doc=Jsoup.parse(html)//连接到页面
Element=doc.getAllegements().first()//接收元素的名称
System.out.println(element.text())//打印“左拉(1)”
System.out.println(element.ownText());//什么也不印
我的目标是只提取“ZOLA”,而不提取子节点的文本,但是ownText
不打印任何内容。。。
我应该怎么做?您可以使用以下方法:
String html=”“;
Document doc=Jsoup.parse(html);
Element elementA=文件。选择第一个(“a”);
System.out.println(elementA.ownText());//左拉
问题在于doc.getAllegements().first()返回
<html>
<head></head>
<body>
<a href="/name/zola-1">ZOLA <span class="tiny">(1)</span></a>
</body>
</html>
当你期待的时候
<a href="/name/zola-1">ZOLA <span class="tiny">(1)</span></a>
以下内容适用于您:
String html = "<a href=\"/name/zola-1\">ZOLA <span class=\"tiny\">(1)</span></a>";
Document doc = Jsoup.parse(html);
Elements links = doc.getElementsByTag("a");
System.out.println(links.get(0));
System.out.println(links.get(0).ownText());
String html=”“;
Document doc=Jsoup.parse(html);
元素链接=doc.getElementsByTag(“a”);
System.out.println(links.get(0));
System.out.println(links.get(0.ownText());
输出:
<a href="/name/zola-1">ZOLA <span class="tiny">(1)</span></a>
ZOLA
左拉