给定一个URL,我希望能够渲染返回的HTML以了解每个div的宽度和高度,每个文本的字体大小,每个元素的颜色,每个元素在屏幕上的位置等。
一种可能的方法是使用Hpricot遍历DOM树并通过使用css_parser gem解析相关样式表来检查CSS样式。但是这不会考虑默认样式,继承,浮点数等。
在Java中,Cobra是一个Java Web渲染器,它能够为每个片段呈现网页和查询宽度,字体大小等属性。我可以使用Cobra和JRuby或类似的解决方案,但更喜欢Ruby原生工具。 Ruby有这样的库吗?
答案 0 :(得分:2)
答案 1 :(得分:1)
Selenium确实提供了用于查询DOM信息的API,我相信有一个针对Selenium的Ruby绑定。它的主要优势,也是它的弱点,它确实需要一个真正的浏览器来呈现元素;这意味着数据在浏览器中是准确的,但也会很重。
答案 2 :(得分:0)