鍍金池/ 問答/Java/ 如何用java保存有ajax 請求的網(wǎng)頁

如何用java保存有ajax 請求的網(wǎng)頁

1.現(xiàn)有需求需要用java 實(shí)現(xiàn)保存一個 網(wǎng)頁的內(nèi)容到本地。
2.使用了jsoup 可以保存靜態(tài)網(wǎng)頁 但是 請求到一個網(wǎng)站 網(wǎng)站有ajax 請求此時使用jsoup 或者 其他的IO 保存方式 拿到的網(wǎng)頁 樣式亂掉了 切沒有 數(shù)據(jù)(因?yàn)閿?shù)據(jù)是ajax 請求)
3.請問 如何實(shí)現(xiàn)java 保存網(wǎng)頁 并且保存樣式 類似于 在瀏覽器中 使用了 ctrl + S 這種做法。
4.謝謝。

回答
編輯回答
她愚我

如果你直接通過httpclient的方式的話,那么你只能拿到一次正常的http請求返回的數(shù)據(jù)內(nèi)容,其中的js是不會執(zhí)行的,就像使用linux 的curl命令返回的內(nèi)容一樣

當(dāng)然你可以通過一個無頭瀏覽器在后臺渲染的方式,來得到ajax請求數(shù)據(jù)后渲染成的html頁面結(jié)構(gòu)內(nèi)容。例如 puppeter,也可以通過前臺可見的渲染方式來獲取數(shù)據(jù),例如electron

2017年5月29日 23:48