shi*_*sei 7 java xpath htmlunit
我正在尝试使用HTMLUNIT在网站上找到一个按钮我遵循本教程http://htmlunit.sourceforge.net/gettingStarted.html但它需要一个表单名称.我正在尝试做的网站有这个页面来源.
<form method="post" action="doDelete">
Are you sure you want to delete 'Apple?'?
<input name="Submit" value="Yes" class="submit-button" type="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
我正在尝试单击网页上的"是"按钮验证框.(删除按钮)如您所见,没有提供表单名称.这是我的代码.
final WebClient webClient = new WebClient();
final HtmlPage page1 = webClient.getPage("http://ma.some-site.com:8080/user/mike/delete");
List<HtmlForm> formlist = (List<HtmlForm>) page1.getForms();
System.out.println(formlist.toString());
final HtmlForm form = page1.getFormByName("myform"); <---Problem here
final HtmlSubmitInput button = form.getInputByName("Submit");
button.click();
webClient.closeAllWindows();
Run Code Online (Sandbox Code Playgroud)
我尝试了这个但是没有用
final HtmlForm form = page1.getFormByName(formlist.get(1).getLocalName());
Run Code Online (Sandbox Code Playgroud)
我相信你可以使用xpath来查找表单名称?
Mos*_*cho 14
是的,您可以通过XPath以这种方式获取此元素:
final HtmlForm form = page1.getFirstByXPath("//form[@action='doDelete']");
Run Code Online (Sandbox Code Playgroud)
当然,如果您有更多元素与该操作,您应该正确设置XPath以选择您希望获得的元素.getFirstByXPath方法只返回所有匹配结果中的一个.如果你想得到很多结果,然后进行进一步的处理,你应该去方法getByXPath.
让我知道它是如何工作的.
| 归档时间: |
|
| 查看次数: |
7648 次 |
| 最近记录: |