解析html并获取应用的元素样式

时间:2012-08-06 20:23:37

标签: java html css

我想使用Java库来解析HTML。

我还希望能够获得文本元素的应用css样式。目前我只想知道字体样式和大小。

可以直接应用样式,也可以从css文件应用样式。我意识到它也可以使用JavaScript来应用,但我现在还不需要这种支持。

目前我正在关注Jsoup,但我没有看到这样的支持。我还可以使用其他库吗?如果我不必使用完整的浏览器引擎来获得此功能,那将是更好的选择。

1 个答案:

答案 0 :(得分:3)

CSSParser至少允许解析CSS文档并迭代不同的样式规则。在问题answerLooking for a CSS Parser in java中,您会找到一个示例用法。

CSSParser是W3C的SAC: The Simple API for CSS

的Java实现
  

SAC 1.0是CSS解析器的标准接口,应该可以工作   CSS1,CSS2,CSS3(目前正在开发中)和其他CSS   派生语言。

但这会迫使你在JSoup和CSSParser之间推出自己的实现。在Java中实现getComputedStyle方法的唯一项目是Lobo Java Browser。不幸的是自2009年以来停止了,但我不认为这会产生问题。

至少他们提供这种方法:

public org.lobobrowser.html.style.AbstractCSS2Properties getComputedStyle(java.lang.String pseudoElement)