我想提取一个文本后,每个标签使用jSoup。有什么方法可以直接选择它,还是我必须执行。
<div>
<a href="#"> I don't want this text </a>
**I want to retrieve this text**
</div>
我认为上述答案虽然提供了解决的方向,但缺乏普遍性。
html结构更改时,nextSibling()
无法使用。
当我参考Jsoup api时,我发现了一个名为textNodes()
的方法,它可以从这个元素中获取文本节点列表。
public static String getTextAfterTag(Element ele) {
String text = "";
for(TextNode node: ele.textNodes()) {
text += node.text();
}
return text;
}
希望能有所帮助。
是的,你可以。
public static void main(String... args) throws IOException {
Document document = Jsoup.parse("<div>"
+ "<a href=\"#\"> I don't want this text </a>"
+ "**I want to retrieve this text**" + "</div>");
Element a = document.select("a").first();
Node node = a.nextSibling();
System.out.println(node.toString());
}
输出
**I want to retrieve this text**
我想在每个文本之后使用jsoup提取一个文本。有没有办法选择它? 示例代码如下: 当它完成时,它会创建自动id示例id=123
我最近尝试使用JSoup来解析HTML文档,我在JSoup上做了一遍turrorious,发现select-Method可能就是我要找的。 我试图完成的是找到html文档中拥有某个类的所有元素。为了测试这一点,我在amazon的网页上尝试了这一点(想法:找到所有有特定优惠的交易)。 因此,我检查了web页面,看看正在使用哪些类和ID,然后尝试将其集成到一个小代码段中。在本例中,我找到了follwi
我想选择强标签内的文本,但不在其下的div。。。 有没有可能直接与jsoup合作? 我的选择尝试(不工作,选择强标签内的完整内容): HTML:
JSoup在这里。我有以下我试图解析的超文本标记语言: 不幸的是,它的格式有点不正确(在
我需要找到以模式开头的html标记(例如,字母's'的模式将使用JSOUP匹配、等)。我尝试使用选择器,但它们似乎没有按照我需要的方式工作。我尝试了各种方法,如或。至少有可能那样做吗?
主要内容:Jsoup 选择器 语法,Jsoup 选择器 说明,Jsoup 选择器 示例以下示例将展示在将 HTML 字符串解析为 Document 对象后选择器方法的使用。jsoup 支持类似于 CSS 选择器的选择器。 Jsoup 选择器 语法 document : 文档对象代表 HTML DOM。 Jsoup : 解析给定 HTML 字符串的主类。 html : HTML 字符串。 sampleDiv : 元素对象表示由 id“sampleDiv”标识的 html 节点元素。