繁体   English   中英

为什么我的XPath不返回任何东西?

[英]Why does my XPath not return anything?

我正在尝试从页面http://vacancycollection.nic.in/cglmarks/获得一个数字输入文本框的XPath以及一个提交按钮。

我使用Firebug的Copy XPath选项创建了XPath。

这是我的输入文本字段的XPath:

HtmlTextInput rollNum = (HtmlTextInput)index.getFirstByXPath("/html/body/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td[1]/table/tbody/tr/td/table/tbody/tr[2]/td/input");

该按钮的XPath为:

HtmlButton button = index.getFirstByXPath("/html/body/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td/table/tbody/tr[2]/td/table/tbody/tr/td[1]/table/tbody/tr/td/table/tbody/tr[5]/td/button");

但是,当我尝试访问文本以及按钮字段时,当我尝试使用System.out.println(rollNum.toString());查看代码时,它将引发java.lang.NullPointerException异常System.out.println(rollNum.toString());

我将HTMLUnit与Java一起使用,以将数据插入输入字段,然后单击提交按钮。 感觉XPath本身存在一些错误。 元素的正确XPath应该是什么?如何找到它们?

我想到了。 实际上,xpath无效,因为我试图访问由我的javascript代码生成的元素,但是webclient没有等待元素加载,因此引发了java.lang.NullPointerException异常。 我添加了webClient.waitForBackgroundJavaScript(30 * 1000); 等待webClient 30秒,现在我可以使用相同的xpath访问元素。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM