使用HtmlUnit Java打开<a href>链接

5

我有一个包含以下内容的html文件:

<td> <a href="/romarin/detail.do?ID=0"> NAME </a> </td>

如何使用HtmlUnit在href上打开链接?
我的代码如下:
 final WebClient webClient = new WebClient(BrowserVersion.INTERNET_EXPLORER_11);
 final HtmlPage page1 = webClient.getPage("file:\\" + newrfile);
 final HtmlSubmitInput button = form.getInputByName("submit");
 final HtmlPage page2 = button.click();
 System.out.println(page2.asText());
 final HtmlForm form2 = page2.getFormByName("SearchForm");
1个回答

10

您可以使用getAnchorByHref方法:

HtmlAnchor htmlAnchor = page2.getAnchorByHref("/romarin/detail.do?ID=0");

然后您可以点击:

HtmlPage page3 = anchor.click();

然后您可以将该页面保存为文件:

page3.saveAs(some_file);

或者

System.out.println(page3.asXml());

好的,我会尽力。谢谢。 - Kevin Rhema Akhwilla
好的,请等到明天,因为我还要运行大约120000个数据的程序,所以在我完成所有操作并且没有问题后,我才能接受它,这样每个人都可以得到最好的答案... :) - Kevin Rhema Akhwilla
仍然存在问题。com.gargoylesoftware.htmlunit.ElementNotFoundException: elementName=[a] attributeName=[href] attributeValue=[/romarin/detail.do?ID=0] 在com.gargoylesoftware.htmlunit.html.HtmlElement.getOneHtmlElementByAttribute(HtmlElement.java:955)中 在com.gargoylesoftware.htmlunit.html.HtmlPage.getAnchorByHref(HtmlPage.java:601) - Kevin Rhema Akhwilla
你好,我可以问你更多问题吗?实际上,我已经进入了第三页(目标页面),但是该页面无法打开,因为缺少Java。问题是我无法获取page3的HTML文件。你知道如何获取HTML文件吗?至少我可以在控制台中获取HTML代码。谢谢。 - Kevin Rhema Akhwilla
我想创建一个新的,但我必须在这里等待大约2到3天。或者我可以拥有您的电子邮件吗?这样我就可以私下向您发送消息了吗? - Kevin Rhema Akhwilla
显示剩余4条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接