0
查看源瀏覽器功能顯示瀏覽器收到的純HTML。當我在Firefug中查看相同的源代碼時。例如,Firefox向您顯示HTML代碼,而Firebug則顯示呈現的代碼。有什麼方法可以從Java中的標準源代碼獲取呈現的代碼?有些圖書館?通過JavaScript從瀏覽器的正常源代碼?
查看源瀏覽器功能顯示瀏覽器收到的純HTML。當我在Firefug中查看相同的源代碼時。例如,Firefox向您顯示HTML代碼,而Firebug則顯示呈現的代碼。有什麼方法可以從Java中的標準源代碼獲取呈現的代碼?有些圖書館?通過JavaScript從瀏覽器的正常源代碼?
如果您想獲得呈現的HTML,請嘗試使用HtmlUnit。它調用大部分的JavaScript事件(onload事件,的onclick,...的onsubmit)自動讓你充當「正常」的瀏覽器:
WebClient webClient = new WebClient();
HtmlPage page = webClient.getPage("http://www.br.de/fernsehen/bayerisches-fernsehen/sendungen/abendschau/bayerwald-tierpark-livereportage-100.html");
DomNodeList<DomElement> objectList = page.getElementsByTagName("object");
編輯:
你將不得不澄清一點。您是否想要在瀏覽器中的網頁或Java應用程序中看到Javascript的來源? – 2013-04-03 20:54:55
呈現的代碼可以根據在任何時間點在客戶端上執行的Javascript而改變。即沒有像呈現的代碼那樣的東西,它可以基於用戶操作甚至異步事件而改變。 – 2013-04-03 20:55:04
我需要將字符串類型的HTML源代碼(原始源代碼,因爲您可以通過右鍵單擊然後「顯示源代碼」在firefox或其他瀏覽器中獲取)然後「顯示源代碼」)轉換爲字符串類型的HTML源代碼,如我在看到在Firebug中顯示網頁...例如[this page](http://www.br.de/fernsehen/bayerisches-fernsehen/sendungen/abendschau/bayerwald-tierpark-livereportage-100.html)...有< object type =「application/x-shockwave-flash」...當我在Firebug中查看源代碼時......我需要在下載源代碼時訪問此元素(