http://jzsc.mohurd.gov.cn/data/company擊企業查詢, 發現返回的數據是經過加密的
1. 尋找返回的數據
既然數據是通過這個 url 返回的, 全局搜索url
http://jzsc.mohurd.gov.cn/api/webApi/dataservice/query/comp/list?pg=0&pgsz=15
嘗試全局模糊搜索 /query/comp/list
點擊進入 js 函數
返回的結果是請求 url /dataservice/query/comp/list 得到的, 打上斷點 點擊搜索 一步一步調式js代碼
調試過程就不一步一步分析了, 最終定位到, 感覺像我們想要的數據, 進入Console打印一下t 和 e
t
t 中data 是 最初我們請求http://jzsc.mohurd.gov.cn/api/webApi/dataservice/query/comp/list?pg=0&pgsz=15 所返回的數據
e 這其中的數據不正是我們想要的數據
2.分析加密方式
既然我們已經知道了數據的加密方式, 那我們就重點分析一下這個地方
其中t.data我們在第一步已經分出來了 使我們第一步請求 http://jzsc.mohurd.gov.cn/api/webApi/dataservice/query/comp/list?pg=0&pgsz=15得到的結果
那我們重點分析 p函數 的處理過程, 點擊進入 p函數, 結果如下
對數據經過層層加密處理后,調用toString方法, 既然加密函數已經找到,我們就可以編寫代碼了
3.代碼實現
我們將函數 p 的代碼復制出來, data是加密后返回的數據,我們先復制出來用一下
運行一下項目
報錯的原因 , 其中 u 和 d 沒有進行初始化 我們尋找一下 u 和 d , 就在函數 p的上方
我們添加到代碼把 u 和 d 添加到代碼中
運行項目 進行測試
其中返回的數據 , 正是我們想要的結果
請勿用於非法用途
