2013-03-19 2 views
0

Я пытаюсь использовать HTMLUnit для получения элементов javascript на веб-странице (https://www.coursera.org/courses), и это только загрузка данных html. Как мне отобразить информацию, отображаемую в контейнере javascript?Использование HTMLUnit для получения элементов javascript

Спасибо!

Мой текущий код:

 public String DownloadPage(String str){ 
    final WebClient webClient = new WebClient(BrowserVersion.FIREFOX_3_6); 
    webClient.getOptions().setTimeout(20000); 
    webClient.getOptions().setJavaScriptEnabled(true); 
    webClient.getOptions().setThrowExceptionOnScriptError(false); 

    try{ 
     HtmlPage page = webClient.getPage(str); 
     XmlPage page2 = webClient.getPage(str); 
     int n = webClient.waitForBackgroundJavaScript(100000); 

     System.out.println("Executing " + n + " JavaSript jobs!"); 
     System.out.println("OUTPUT: " + page2); 

     System.out.println("OUTPUT: " + page.asXml()); 
     webClient.closeAllWindows(); 
    } 

    catch(IOException e){ 
     JOptionPane.showMessageDialog(null, "error"); 
    } 


    webClient.closeAllWindows(); 
    return ""; 
} 

ответ

0

использование

String theContent1 = webClient.getPage(theURL).getWebResponse().getContentAsString(); 

вместо

String theContent2 = webClient.getPage(theURL); 

theContent1 должен содержать фактический исходный код страницы, включая JavaScripts (если таковые имеются).

Смежные вопросы