gpt4 book ai didi

HTML::TableExtract 的 Java 等效项

转载 作者:行者123 更新时间:2023-12-01 15:33:17 25 4
gpt4 key购买 nike

任何人都可以推荐一个类似于 perl 模块的 Java 库 HTML::TableExtract 。该模块的显着特点之一是它可以帮助用户通过使用深度和计数轻松识别嵌套表。我使用了一些库,如 JSoup、HTML 解析器和 HTML Unit。但到目前为止,我还没有任何接近 HTML::TableExtract 模块的东西。那么这里有人可以建议我一些与 Java 中的这个模块等效的模块吗?因为我想做的是在每个表中搜索关键字,如果存在,我将提取表。对于嵌套表,我只想提取作为关键字的表,而不是父表。提前致谢

@Łukasz Rżanek 请考虑以下 HTML 代码

<html>
<table border=3 cellpadding=10>
<tr>
<td valign=top>
Content 1
</td><td>
Content 2<p>

<table border=1>
<tr>
<td>Content 3</td>
<td>Content 4</td>
</tr><tr>
<td>Content 5</td>
<td>Content 6</td>
</tr>
</table><p>

Content 7
</td>
</tr>
</table>
</html>

这里我只想提取包含内容 3 的表。如何使用 JSoup 来做到这一点?

最佳答案

您可能需要添加一些额外的逻辑。

检查并告诉我这是否是您想要的?

 /**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
// TODO code application logic here
Document doc = Jsoup.parse(new File("**//HTML File Path//**"), "utf-8");
Elements elements = doc.getElementsContainingOwnText("**//Text to Search//**");
for(Element element : elements) {
Element table = getImmediateParentTable(element);
System.out.println(table.outerHtml());
}
}

public static Element getImmediateParentTable(Element element) {
while(element.tagName().equals("table")) {
return element;
}
return getImmediateParentTable(element.parent());
}

关于HTML::TableExtract 的 Java 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9291399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com