2015-09-25 28 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()); 
    }