解释 HTML/CSS 和获取元素样式的命令行工具

Command line tool to interpret HTML/CSS and get element styles

假设我下载了一个 html 页面及其所有 css 文件(例如使用 curl) 所以我有一些 html 代码,一些 css 在头部,在标签中,还有一些 css 来自文件。

有没有我可以使用的工具,例如获取页面中位置 2957 处该字符的颜色和 font-size,或该标签从位置 3917 开始的高度?

我正在寻找 Linux 没有 X 的命令行,或者 perl 模块。 当然,该工具会知道礼节如何来自 parents,如何根据它们的顺序被 css 代码覆盖,等等

谢谢!

编辑:身高是一个危险的例子,可能会混淆 reader。我不是指自动时的渲染高度,例如我的意思是字符串 "auto"。所以不需要渲染。

本质上,您要求的是无需任何图形子系统即可工作的浏览器。只是为了测量一些元素 ( "height of this tag starting at position 3917" ) 你需要那台机器上的字体和对字体进行光栅化的代码。

我认为来自浏览器供应商的任何人都不会关注在无头设备上呈现的方向。

答案也是如此:几乎没有机会找到这样的工具。

标准的无头浏览器是 PhantomJS:http://phantomjs.org/ (and there are other similar ones like https://slimerjs.org/)。

我不确定它的像素完美程度如何(但即使在混合操作系统等上使用不同版本的桌面浏览器也是如此),但会完成完整的 DOM 和 CSS 可以编写脚本并从中获取结果的解析。