用于构建HTML文档的库



有人能推荐那些能做与这些库相反的事情的库吗?

HtmlCleaner、TagSoup、HtmlParser、HtmlUnit、jSoup、jTidy、nekoHtml、WebHarvest或Jericho。

我需要构建html页面,从String内容构建DOM模型。

编辑:我需要它来测试。我有各种类型的输入/字符串,它们可能在不同地方的html页面中。。。所以我需要动态地构建它。。。然后,我根据各种必须满足或不满足的标准来处理html页面。

我会告诉你为什么我问这个问题,考虑这个工作的htmlCleaner:

List<String> paragraphs = getParagraphs(entity.getFile());
List<TagNode> pNodes = new ArrayList<TagNode>();
TagNode html = cleaner.clean("<html/>");
for(String paragraph : paragraphs) {                
    TagNode p = new TagNode("p");
    pNodes.add(p);
    // CANNOT setText() ?
}
html.addChildren(pNodes);

问题是TagNodegetText()方法,但没有setText()方法。。。。

请添加更多关于这个问题有多模糊的评论。。。你能做的最好的事情

Jsoup,Jsoup!我用过所有这些,而且它是我的最爱。您可以使用它来构建文档,此外,它还带来了Jquery风格遍历的许多魔力,以及我在Java库中见过的迄今为止最好的HTML文档解析。我对它很满意,所以我不介意无耻地宣传它

Java有很多模板库,从JSP到FreeMarker,从各种框架(Spring?)中的特定实现到StringTemplate之类的通用库。

最困难的任务是…做出选择。

一般来说,这些库提供了一个网页骨架,其中有一些"洞"可以填充变量。这是最简单的方法,通常可以很好地使用工具
如果您真的想从Dom构建,您可以使用XML库并生成XHTML。

如果您对HtmlCleaner特别感兴趣,它实际上是构建html文档的一个非常方便的选择。

但您必须知道,如果您想将内容设置为TagNode,则需要附加一个子ContentNode元素:-)

List<String> paragraphs = getParagraphs(entity.getFile());
List<TagNode> pNodes = new ArrayList<TagNode>();
TagNode html = new TagNode("html");
for(String paragraph : paragraphs) {                
    TagNode p = new TagNode("p");
    p.addChild(new ContentNode(paragraph));
    pNodes.add(p);
}
html.addChildren(pNodes);
jwebutils——一个使用Java创建HTML5标记的库。它还包含对创建JSON和CSS3标记的支持。

Jakarta元素构造集(ECS)-一个用于为各种标记语言生成元素的Java API,它直接支持HTML 4.0和XML。现在退休了,但有些人真的很喜欢它。

相关内容

  • 没有找到相关文章

最新更新