JxBrowser如何从java中的html节点获取值

时间:2018-04-14 08:53:56

标签: java jxbrowser

大家好我正在尝试使用jxBrowser组件而且我无法获得所选html组件的值...

List<DOMElement> paragraphs = divRoot.findElements(By.cssSelector("p"));
            for (DOMElement paragraph : paragraphs) {
                System.out.println("paragraph.getNodeValue() = " +
                        paragraph.getNodeValue());
            }

我能够找到段落..但是无法获得节点的值......或者只是<p>I cant get this value<p/>代码必须正常,因为它只是他们自己的示例代码的纯副本:here

所以我的问题是......我做错了什么?它似乎正确导入..我在macbook上使用库版本6.19.1。 (我甚至在具有相同结果的Windows 10上尝试过它。)

或者如果还有其他具有类似功能的java浏览器解决方案..我需要的是加载页面,从某些div中获取一些值,然后模拟点击。

1 个答案:

答案 0 :(得分:1)

DOMElement.getNodeValue()返回此节点的值,具体取决于其DOMNodeType。您尝试获取的文本是

节点的子节点,因此您需要使用以下代码paragraph.getChildren().get(0)来获取它。

因此,最终代码如下所示:

for (DOMElement paragraph : paragraphs) {
    System.out.println("paragraph.getNodeValue() = " +
    paragraph.getChildren().get(0).getNodeValue());
}