配置
-
配置 Connecttions 以下圖 選中 Tools ---> Options ---> Connecttions;html
-
配置 Https 以下圖所示:web
-
由於要抓取https的數據 因此還須要生成證書,一路點擊確認 Actions ---> Trust Root Certificate :瀏覽器
-
導出證書到桌面, Actions ---> Export Root certificate to Desktop,這時就能夠看到桌面生成的證書了,這個證書是能夠安裝到系統或者瀏覽器的證書列表裏抓取桌面軟件或者安全
網頁https數據包的。服務器
2、手機配置
手機配置須要讓電腦和手機設備在同一個局域網裏面,因此能夠再電腦上開個wifi連接手機markdown
-
手機在WIFi列表上長按連接的本地局域網WIFI的名稱 選擇 修改網絡 ---> 高級設置 ---> 代理 ---> 手動(通常Android手機都是這個套路)網絡
-
配置參數以下圖:post
-
配置完成以後還須要將Fiddler生成的證書安裝到手機上,在手機瀏覽器上面輸入代理服務器的IP和端口,例如我電腦的IP :http://192.168.60.107:8888 會看到以下頁面:插件
-
這裏還須要注意一點就是在抓移動端數據的時候,用到了開頭下載的 Fiddlercertmaker 插件,這個插件能夠幫助咱們抓取到移動端的數據,直接點擊運行,而後重啓Fiddler,以下圖點擊肯定便可:代理
-
至此手機訪問網絡就能夠看到抓到Https網絡請求了以及獲取的數據:
3、瀏覽器配置
-
若是咱們要抓取web頁面的https數據包,請首先配置瀏覽器代理,例如火狐瀏覽器,選項 ---> 常規 ---> 網絡代理 ---> 設置:
-
而後將上述導出到桌面的證書添加到瀏覽器的證書列表裏面,固然也能夠經過訪問代理服務器下載證書,進入選項--->隱私與安全---->證書--->查看證書, 以下圖:
-
web配置也完成了能夠看到訪問百度成功了,而且拿到了網頁數據:
遇到的問題
-
對於移動端抓包,若是咱們按配置,就是抓不到數據包,這裏必定要注意是否使用了Fiddlercertmaker這個插件,這個是官方提供的專門抓取Android和IOS Https數據包的插件;
-
還有就是經過以上的配置仍是抓取不到數據,那問題極可能就出如今證書上了,這裏的方法就是將Fiddler生成的證書所有清除掉從新生成證書,而後從新安裝,這裏看一下再瀏覽器抓不到包的問題;
1.) 打開"運行"對話框(Win+R),輸入命令:certmgr.msc 回車,打開證書管理並搜索證書,操做(A)--->查找證書---> 刪除:
2.) 打開火狐瀏覽器,進入選項--->隱私與安全---->證書--->查看證書,查找以DO_NOT開頭的關於Fiddler的證書,每一個選項tab裏面都找一找,而後幹掉;
3.) 證書清除乾淨以後咱們從新生成證書,執行上述的配置.3和4生成證書步驟,注意:這裏生成證書有可能會失敗 ,彈出「creation of the root certificate was not successful」提示;
4.) 解決辦法:打開"運行"對話框(Win+R)切換到Fiddler安裝目錄 執行命令:makecert.exe -r -ss my -n "CN=DO_NOT_TRUST_FiddlerRoot, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com" -sky signature -eku 1.3.6.1.5.5.7.3.1 -h 1 -cy authority -a sha1 -m 120 -b 09/05/2012
5.)從新生成證書後導入到瀏覽器便可,而對於移動端,只須要清除移動端的證書從新執行上述手機配置.3步驟 。
-
最後關於抓包的原理 能夠參見這個博客:http://www.javashuo.com/article/p-oykyvbyv-ez.html