8

我正在尝试在 Java 中解析 CSS DOM,并且已经将 jSoup 用于 HTML 的相同功能。我正在查看 jSoup API(当然还有 Google),但没有找到任何与 CSS 相关的解析类。有没有办法使用 jSoup 将 CSS 格式解析为 DOM,还是我需要不同的 API?

4

1 回答 1

3

Jsoup 无法遍历 CSS DOM,尽管您可以通过选择样式/链接标签来访问它。

看看CSS Parser,它看起来很有前途。

    InputSource source = new InputSource(
        new StringReader(
            "h1 { background: #ffcc44; } div { color: red; }"));
    CSSOMParser parser = new CSSOMParser(new SACParserCSS3());
    CSSStyleSheet sheet = parser.parseStyleSheet(source, null, null);
    CSSRuleList rules = sheet.getCssRules();
    for (int i = 0; i < rules.getLength(); i++) {
        final CSSRule rule = rules.item(i);
        System.out.println(rule.getCssText());
    }

输出

h1 { background: rgb(255, 204, 68) }
div { color: red }
于 2016-08-03T16:43:40.570 回答