抓包軟件 Fiddler 瞭解一下?

學會如何抓包,是爬蟲的必備技能,甚至能夠說,不會抓包就等同於不會爬蟲。python

那咱們怎樣抓包呢?若是直接抓取瀏覽器上的內容,能夠直接使用開發者工具進行抓包,但有個侷限,只能抓瀏覽器的,功能也沒有多少。還可使用別的工具,好比 mitmproxy、charles,固然還有今天所說的 Fiddler 。今天要分享的就是如何使用fiddler進行抓包以及它的功能講解。mysql

1. 下載並安裝fiddler

下載地址:www.telerik.com/download/fi…web

這裏填寫下你的下載目的和國家就能夠下載了,安裝的話這裏就很少說了。正則表達式

2. Fiddler工做原理以及優缺點

圖片來自https://blog.csdn.net/DreamTL/article/details/70405368sql

如上圖,Fiddler 做爲一個代理,先是捕捉到客戶端的 request 請求,而後再本身轉發到服務器端,服務器接收到請求時,會返回一個響應 response ,Fiddler 仍是會繼續捕捉到服務器的響應請求,再來轉發給客戶端,簡單來講, Fiddler 就是做爲一箇中間人。編程

優缺點:windows

只支持 http、https、ftp、webscoket 數據流等相關協議的捕捉,沒法監測或修改其餘數據流,如 SMTP、POP3 協議(郵箱相關的協議),沒法處理請求和響應超過 2GB 的數據,還有就是隻支持 windows 平臺,若是想要支持 mac 的話,建議下載 charles ,不過很吃性能,在我機子上運行下那風扇就想起來了。瀏覽器

3. Fiddler 功能詳解

3.1 如何進行抓包

1)先勾選容許抓取 https 流量服務器

這個就是容許抓取 https 的流量。若是第一次使用,勾選以後會提示你安裝一個證書,這個證書就是用來作中間人進行抓包的, Fiddler使用此證書來解密所捕捉到的包,再加密轉發到相對應的服務器端或者客戶端。網絡

若是你尚未安裝就點擊 Yes 安裝便可,若是沒有彈出此窗口的也能夠點擊右上角的 actio 按鈕的第一個選項也是能夠彈出此個窗口的

上面圈出來的是表示抓取哪一部分的流量。

  1. from all processes:抓取全部進程的流量

  2. from browsers only:只抓取瀏覽器的流量

  3. from non-browsers only:不抓取瀏覽器的流量

  4. from remote clients only:抓取遠程的客戶端,當須要抓取的是手機端的流量,就須要用到這個

2)接下來設置端口號

通常默認便可,這裏我設置成了8889。

下面的那個 Allow remote computers to connect 是容許遠程的客戶端進行鏈接,若是抓取手機端的也須要勾選。

3)瀏覽器設置代理服務器

Fiddler 的設置完了,這時候還須要在你的瀏覽器上設置代理服務器才能進行抓取。

使用 Chrome 瀏覽器的能夠直接使用 SwitchyOmega 插件進行修改便可,操做簡單。

點擊新增情景模式

選擇代理服務器,隨後填寫任意名字,這裏我填寫的是 Fiddler,點擊建立便可。

而後填寫以上內容,代理服務器爲本機,端口號爲上面在 Fiddler 設置的端口號,填寫完在左下角點應用選項纔算設置完畢。

設置完以後再在瀏覽器插件處點擊該插件,而後選擇該模式便可開始抓包

設置完以後第一次打開多是這樣的

關閉 Fiddler 再從新打開就能夠了

3.2 進行手機端抓包

手機端的抓包也是很容易的,先是設置好 Fiddler 的容許抓取遠程客戶端。

這時用手機鏈接wifi,而後長按修改網絡(不一樣安卓手機不同)

點擊代理,而後點擊手動

主機名就寫你電腦上的 ip 地址,查看 ip 地址能夠在控制檯上輸入 ipconfig 便可

因爲個人電腦也是鏈接 wifi 的,因此 ip 地址對應的是 無線網絡的那個,若是你的電腦是使用網線來進行上網的,那 ip 地址就是 以太網的那個。

填完以後還不能抓取,若是直接抓取會顯示證書有問題。

咱們也是須要安裝證書才能夠正常抓取的。那接下來安裝證書

手機瀏覽器輸入 你的ip地址:端口號 進入網址下載證書,如 192.168.1.2:8888, 端口號仍是以前在 Fiddler設置的那個

點擊上圖箭頭的網址進行下載便可,下載完畢以後點擊安裝便可。

若是你是 miui 系統的機子,就須要進入wifi 設置的界面進行安裝

點擊 高級設置 --> 安裝證書 便可,期間須要密碼驗證或者設置密碼之類的設置便可。

還有一個大坑,就是若是你的機子 是安卓 9 而是 miui 系統(其餘系統沒測試過)的話,安裝了證書也是沒用的,在進行抓包的時候仍是會提示證書有問題。安卓 8 版本的我沒有測試過,不過安卓 7 版本如下的估計均可以。

弄完了以上的東西就能夠抓包了,若是設置完了,網絡沒了,仍是那樣子,第一次設置完須要重啓下 Fiddler 軟件就能夠抓包了。

3.3 抓包內容的介紹

很明顯左邊的就是捕捉的請求和響應,右邊的就是對應請求的詳細信息,好比請求頭,表單信息,好比上圖下面箭頭所指的就是表單信息。,若是這些信息看到的內容不多的話,能夠直接點擊下面的 View in Notepad 按鈕就能夠在筆記本中顯示出來,很是方便。

左邊每列表明的含義爲:

左邊第一列中每一個圖片表明的含義爲:

3.4 再說幾個經常使用的功能

查找:抓包時,常常會抓到一堆不重要的包,而須要找的包夾雜在裏面很是難找,因此就能夠用關鍵字來查找,入口爲:

也能夠直接點擊這個

或者直接按快捷鍵 Ctrl + F 便可

這裏的功能很強大,能夠只查找請求或者響應或者兩個都查,還能夠用正則表達式來查找,就不一 一說了。

映射:也就是重定向,將服務器端的響應內容能夠更改成客戶端上的文件,功能也是很強大,以前我在爬取網易雲評論時也是弄過的,有興趣的能夠看看利用python爬取網易雲音樂,並把數據存入mysql

在這裏填寫對應的規則和文件便可

還有一個相似於 postman的功能,就是下面這個

就是在這裏模擬請求,有什麼須要模擬的話能夠先在這裏模擬一次,成功以後再用編程去敲出來也是不錯的,很是強大。

因爲篇幅問題,還有一些功能就暫時不介紹了,等之後用到的時候會說哈,好比斷點調試之類的,到時記得時刻關注哦!

相關文章
相關標籤/搜索