匹配JavaScript和JSoup DOM节点

时间:2014-03-13 14:58:05

标签: javascript dom jsoup

我目前使用Jsoup来解析网页的DOM树。我有一个单独的应用程序呈现页面并使用JavaScript来提取每个DOM节点的呈现位置。我使用JavaFX stage,webEngine,webView和executeScript功能来执行以下JavaScript:

var all = document.getElementsByTagName("*");
var serialization = "";
var width = window.innerWidth;
var height = window.innerHeight;
for (var i = 0, max=all.length; i < max; i++) {
    serialization += all.item(i).tagName+": "+all.item(i).offsetLeft+" "+all.item(i).offsetTop+" "+all.item(i).offsetWidth/width+" "+all.item(i).offsetHeight/height+"\n";
}
serialization

我现在面临的问题是将我从JavaScript获得的输出与我从Jsoup机制收集的信息相关联。即我想将每个节点的渲染位置添加到Jsoup数据结构中。每个DOM节点都有一些我不知道的唯一ID,或者我应该尝试一种完全不同的方法吗?

1 个答案:

答案 0 :(得分:0)

我认为你可以使用xPath作为DOM和JSoup中的唯一标识符。

然后,您可以通过这两个xpath表达式比较每个节点。希望这澄清。