在一些網絡開發工作中需要抓取分析瀏覽器的數據交互情況,在PC端,相應的方法、工具很多,而在手機移動端,就不是那麼方便了,手機端受限於屏幕及功能等,無法直接在手機端進行數據包交互的抓取及分析,可靠的方法就是用PC來抓取和分析最方便了,那麼如何做呢?結合網絡上找到的方法和自己的實踐,來說一說用PC來抓取分析手機瀏覽器數據包的方法。主要用到的是電腦端的抓包工具:fiddler及其擴展fiddlercertmaker。
設備準備工作:一臺帶有無線網卡的PC或者筆記本電腦,然後將電腦和手機連接到同一個Wi-Fi網絡中,並且保證二者是在同一個ip網段內。
下載安裝Fiddler及fiddlercertmaker,其中fiddlercertmaker擴展主要是為了抓取https的加密連接,如果沒有這方面的需求,可以省略掉此擴展的下載安裝。百度關鍵字「Fiddler」,第一個是百度下載中心的軟體下載,可以直接下載,也可以到第二個的官網下載,官網有兩個版本,分別基於.Net4和.Net2,可酌情下載。
安裝過程就省略了,沒有任何需要功能設置的選項,只需選擇安裝路徑即可。安裝後,運行Fiddler。運行後的窗口如下圖。
點擊「Tools」菜單,選擇「Fiddler Options...」菜單,打開設置窗體。
在設置窗體中,切換到「」頁面,請對照頁面進行完全一樣的選項設置。
獲取電腦的IP位址,如圖所示:在打開的Fiddler窗口中,工具欄的最右邊,找到online按鈕,滑鼠移動到按鈕上,既有提示信息顯示了。記下這個IP位址,稍後需要在手機中設置此地址。
手機設置,設置代理服務地址及埠。因手上只有小米2一臺,所以設置的截圖也是此手機的,具體的設置方法可能手機略有不同吧,這個就請自行研究了。
手機訪問了天貓,再看看電腦端,哈哈,就是這個數據了。
抓取https的數據包,需要下載一個擴展組件fiddlercertmaker,可以百度這個關鍵詞或是在官網下載。下載後,直接安裝即可。
在Fiddler中選項設置中,點擊菜單欄上的 Tools - Fiddler Options - HTTPS,勾選上Decrypt HTTPS traffic ,然後重啟Fiddler。
在手機瀏覽器中,直接訪問電腦端的IP位址+埠。比如我這裡的:192.168.31.162:8888,在打開的頁面中點擊下載證書連接。
接下來可以手機訪問一個https的連接了。看看抓到的數據吧。至此,手機訪問的數據都可以在PC端進行抓取分析了。