使用fiddler打包網站全家桶
文章導讀
- 如何使用fiddler保存網站內容
- 如何使用保存的內容
如何使用fiddler保存網站內容
大家在做需求開發的時候,或多或少都需要參考一下外部網站的交互、實現方式或者數據。但是有時候這些被參考的網站可能賬戶訪問有限制,比如要用Ukey才能登陸(生意參謀),還有一些就是賬號有時間限制,時間到了就不讓用了(烽火台)
如果我們開發的周期比較長,又經常需要打開這類站點做參考的時候,我們可以考慮把網站的所有內容保存到本地,用到時慢慢查看。
為什麼不直接用ctrl+s
在瀏覽器上直接保存頁面是可以把這個頁面的所有資源下載下來,主要有以下兩個弊端:
- 頁面內容中的鏈接不是指向本地文件,如果點擊頁面中的超鏈接,就會指向現網的頁面而非本地保存的內容
- 遇到頁面中使用ajax請求,會因為跨域的原因被瀏覽器攔截,動態介面幾乎不能用
使用fiddler來保存頁面內容
我們都知道,fiddler可以抓到瀏覽器訪問網頁的所有請求,而且他也提供了批量保存的功能,最重要的是,可以把多個頁面的請求保存成一個saz包
比如我把這些請求統一保存成一個叫「烽火台.saz」
如果別的同事電腦上也安裝了fiddler之後,直接把這個文件拖拽到fiddler中,就能快速查看裡面的所有請求記錄,傳播起來非常方便
如何使用保存的內容
前面我們提到,使用瀏覽器直接保存網頁的兩個比較大的弊端,在fiddler中都可以得到很好解決。
利用fiddler可以模擬請求返回內容的特性,我們只需要正常訪問網站,並且把網站發出的所有請求指向到本地的數據,就可以突破線上的控制,也不需要修改url,也就沒有什麼跨域限制了。
一個網站的請求其實蠻多的,我們需要一條條添加規則嗎?答案是否,因為我們已經把請求保存成一個saz包了,只需要導入這個包,就可以快速創建映射規則
在抓取之前,為了讓抓到的數據乾淨,不摻雜無用信息,可以做一個請求過濾,只列出我們需要抓的請求,最簡單的就是過濾域名,如下圖
然後盡情點開目標網站,不放過任何一個頁面和功能,點完之後把界面上的請求全部選中保存成saz包
在AutoResponder這個tab中選擇import導入saz包
點擊確認後自動生成規則,記得把enable rules打上勾
接下來我們在瀏覽器中訪問這個網站的任何頁面,都已經是指向本地內容了
這是正常訪問的請求,會展示外網ip
指向本地之後的請求
需要注意的是,有些請求會帶時間戳,那麼就需要對規則進行一些修改,把時間戳部分刪除並使用模糊匹配就可以了。
推薦閱讀:
※基於fiddler來模擬限速
※fiddler到底能做什麼?
※Fiddler抓包配置教程
TAG:fiddler |