2015-09-25 22 views
0

我对HtmlUnit完全陌生,而且我不知道如何阅读和理解网站的页面源。尽管如此,我已经写了代码(从这个tutorial了解到)尝试访问以下网站如何查找和写入textfield并单击使用HtmlUnit提交?

然后我被卡住了,因为我不熟悉JavaScript。这是我想达到什么:

  • 我想在左边的菜单上的文本框键入328上 该网站

  • 点击提交按钮

这样我可以进入下一页。

更新:我设法通过在我的代码中添加一行来解决页面访问问题。但是,我仍然无法找到输入文本字段,输入一些输入并单击按钮,以便我可以登录到下一页。

public void testing() throws Exception { 
      /* turn off annoying htmlunit warnings */ 
    java.util.logging.Logger.getLogger("com.gargoylesoftware").setLevel(java.util.logging.Level.OFF); 
    try (final WebClient webClient = new WebClient(BrowserVersion.CHROME)) { 
     final HtmlPage page = webClient.getPage("http://www.aastocks.com/en/stock/DetailQuote.aspx?&symbol=1"); 
     final HtmlDivision div = page.getHtmlElementById("LeftMenu_Button"); 
    } 
} 

回答

0

网站与URL //:,这是不正确地处理的HtmlUnit一个CSS,而现在是固定的SVN。

请得到latest build,与下面的代码工作:

try (final WebClient webClient = new WebClient(BrowserVersion.CHROME)) { 

     final HtmlPage page = webClient.getPage("http://www.aastocks.com/en/stock/DetailQuote.aspx?&symbol1"); 
     HtmlInput input = page.getHtmlElementById("PY_txt"); 
     input.type("328"); 

     final HtmlPage page2 = page.getHtmlElementById("imgHKStockSubmit").click(); 
     System.out.println(page2.getUrl()); 
     System.out.println(page2.asText()); 
    }