Fiddler是一款免費而且功能強大的數據包抓取軟件,下面就為大家介紹一下抓包流程,只需按圖片一步一步操作就可實現數據抓取。
1.首先安裝Fiddler抓包工具軟件
下載鏈接:https://www.telerik.com/download/fiddler/fiddler4
Fiddler00.png
安裝完成,只需點擊同意,下一步安裝即可。
2.Fiddler相關配置
安裝完畢后,按下圖圖進行配置勾選,然后重啟Fiddler。
Fiddler01.png
Fiddler02.png
Fiddler03.png
按圖進行配置操作,然后重啟Fiddler。
3.獲取IP地址
搜索命令cmd打開命令窗口,輸入ipconfig 查看IP地址。
Fiddler04.png
4.移動端代理配置
確定手機和電腦處在同一局域網中。
手機打開WiFi設置,選擇高級選項中代理,選擇手動,此時需要輸入我們剛剛獲取的IP地址并加上端口號:8888;
Fiddler05.jpg
設置成功后進行保存,然后代開瀏覽器,輸入我們的IP地址及端口號,打開網站內容;
Fiddler06.jpg
選擇最下方藍色字體,進行證書安裝;如果有警告,點擊繼續,將下載后的文件打開安裝;
Fiddler07.jpg
對證書命名,點擊確定,就完成了所有配置工作了。
Fiddler08.jpg
5.普通抓包
手機端安裝我們想要抓取的APP應用,打開應用,就可以在Fiddler客戶端中進行查看網絡請求內容了。
6.解決Tunnel to 443問題
首先找到Fiddler頂部右側選項卡FiddlerScript,然后再下側欄中點擊 Go to:后側空白欄,選擇OnBeforeRequest,這時候會定位到OnBeforeRequest()方法的開頭,慢慢下拉到方法結尾處,在結尾括號前加上下面代碼,點擊Go to:左側選項Save Script進行保存。
Fiddler09.png
var hosts = 'zkd.me develop.dog';
FiddlerApplication.Log.LogFormat("Logger session {0}, Url: {1}, isHttps: {2}, port: {3}", oSession.id, oSession.fullUrl, oSession.isHTTPS, oSession.port);
if(hosts.indexOf(oSession.host) > -1){
FiddlerApplication.Log.LogFormat("Capture session {0}, Url: {1}, isHttps: {2}, port: {3}", oSession.id, oSession.fullUrl, oSession.isHTTPS, oSession.port);
if(oSession.HTTPMethodIs('CONNECT')){
FiddlerApplication.Log.LogString('create fake tunnel response');
oSession['x-replywithtunnel'] = 'FakeTunnel';
return;
}
if (oSession.isHTTPS){
FiddlerApplication.Log.LogString('switch https to http request');
oSession.fullUrl = oSession.fullUrl.Replace("https://","http://");
oSession.port = 80;
}
FiddlerApplication.Log.LogFormat("Processed session {0}, Url: {1}, isHttps: {2}, port: {3}", oSession.id, oSession.fullUrl, oSession.isHTTPS, oSession.port);
}
FiddlerApplication.Log.LogFormat("Logger session {0}, Url: {1}, isHttps: {2}, port: {3}", oSession.id, oSession.fullUrl, oSession.isHTTPS, oSession.port);
重啟Fiddler客戶端,刷新手機APP客戶端數據內容,就會發現可以獲取到對應數據內容了。
Fiddler10.png
參考文章:https://blog.csdn.net/amrenyu/article/details/80745674