我正在开发一个 apsx 网站。我找不到使用 HtmlUnit 单击表内链接的方法。 我已经尝试了很多方法,但出现“ItemNotFound”异常或“NullPointerException”。
这是我的代码:
public static void selezionaConto(HtmlPage page, int nConto) throws Exception {
try (final WebClient webClient = new WebClient(BrowserVersion.CHROME))
{
webClient.getOptions().setThrowExceptionOnScriptError(false);
final HtmlPage currentPage = page;
nConto = 5;
switch (nConto) {
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
HtmlAnchor nextLink = currentPage.getFirstByXPath("//a[@id='lnkQuintoConto']");
HtmlPage newPage = nextLink.click();
System.out.println(newPage.asXml());
break;
}
}
}
}
最佳答案
你应该这样做:
currentPage.getFirstByXPath("//a[@class='SelezDecretoButton']");
或
currentPage.getFirstByXPath("//a[@id='lnkQuintoConto']");
或
currentPage.getAnchorByHref(complere_href)
XPath 表示:从根 //
开始,在子级中递归选择 a
以及 @id
或 @class
属性 of whatever
。
关于java - 如何使用 HtmlUnit 单击 aspx 站点中的超文本链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32722726/