java如何爬取js處理後的程式碼
为情所困
为情所困 2017-05-17 10:04:18
0
2
646

頁面網址:
http://acm.hdu.edu.cn/showpro...

爬取的目標:

#想要爬取這些個公式的程式碼,ChromeF12看到的程式碼:

但是爬取到的程式碼如下:

#這個程式碼並不能顯示正確的公式,似乎這些程式碼都是js產生的,該如何爬取到這些程式碼。

为情所困
为情所困

全部回覆(2)
黄舟

這是MathJax工具解析的。
在HTML程式碼中查看公式p的下一個id為MathJax-Element-X的script,複製裡面的內容,在公式前後加兩個$$(前後都是兩個美元符,所以一共是四個)最後使用MathJax解析就可以了。
說再多不如上圖:

阿神

先抓包,把ajax請求抓出來,關鍵是看怎麼構造該請求,主要是一些參數的確定。套路大概下面幾個:1 在上下文搜搜相關參數是否存在,如果是伺服器回傳的,就直接請求伺服器取得該參數;2 如果該參數很明顯不變或變更有規律,可以直接偽造;3 如果參數很複雜且沒規律,那麼需要搜尋參數的key,找到加密的js,然後建構參數的值,得到ajax url;4 實在難度太大那麼用selenium等自動化工具驅動瀏覽器來訪問,它會直接給你渲染好所有js

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板