1. 程式人生 > >Python爬蟲也能用手機進行抓包?沒錯!這個技巧我只告訴你

Python爬蟲也能用手機進行抓包?沒錯!這個技巧我只告訴你

今天要說說怎麼在我們的手機抓包

我們知道了 HTTP 的請求方式

以及在 Chrome 中摸清了一些套路

但是

除了對資料進行解析之外

有時候我們想

對請求的資料或者響應的資料進行篡改

怎麼做呢?

我們經常在用的手機

手機裡面的資料

怎麼對它抓包呢?

那麼...

接下來就是學習 python 的正確姿勢

我們要用到一款強大免費的抓包工具

Fiddler

你可以到

https://www.telerik.com/download/fiddler

去下載

那麼 Fiddler 是怎麼玩的呢?

一般情況下

我們通過瀏覽器來請求伺服器的時候

是點對點的

我來給大家畫個圖

正常情況下

瀏覽器給伺服器傳送請求

伺服器響應返回資料

但是這個時候

Fiddler非要來這裡插一腳

學習過程中有不懂的可以加入我們的學習交流秋秋圈784中間758後面214,與你分享Python企業當下人才需求及怎麼從零基礎學習Python,和學習什麼內容。相關學習視訊資料、開發工具都有分享

然後

就變成這樣了

Chrome傳送請求給伺服器的時候

會被 Fiddler 攔截下來

可以在這裡修改請求引數什麼的

然後 Fiddler 假裝自己是瀏覽器

再發送資料給伺服器

這個時候伺服器接收到 Fiddler 的請求

還是天真的以為是 Chrome 傳送的

於是就返回資料了

沒想到在半路殺出個程咬金

返回的資料又被 Fiddler 攔截下來了

Fiddler 可以在這個時候

對資料進行修改

然後在返回給 Chrome

這就是 Fiddler 的主要使命

好了

知道了 Fiddler 的具體工作原理之後

咱們就能操作一番

安裝完之後在電腦開啟 Fiddler

一般情況下

我們按下 F12

就可以抓取我們在瀏覽器的請求了

如果這個時候你在瀏覽器傳送請求

但是 Fiddler 沒有一丁點反應

那麼可以在你的瀏覽器配置一下代理

Fiddler 的預設代理 IP 為

127.0.0.1

埠為

8888

就拿 Chrome 瀏覽器為例

開啟

設定-->高階-->開啟代理設定

進行設定上面的 ip 地址和埠就可以了

這時候你在瀏覽器訪問網站

在 Fiddler 就可以抓取到你的請求了

不過...

先別高興太早

你可能會發現很多這樣的錯誤

Tunnel to 443

因為現在很多請求都是 **HTTPS **了

所以我們需要安裝證書

才可以抓取 https 的請求

那麼咋整咧?

點選選單

Tools->Options

接著選擇

HTTPS

勾上

Decrypt HTTPS traffic

勾完之後呢

有沒看到右上角有個 Actions 按鈕

輕輕按一下

選擇

Reset All Certificates

完事之後

回到你的瀏覽器輸入

localhost:8888

可以看到一個這樣子的頁面

點選 FiddlerRoot_certificate 下載證書

安裝完之後再開啟 Fiddler

你會發現你可以抓取 Https 的請求了

那麼

各欄之間都代表啥意思呢

左邊代表的就是你的請求

Result : 請求的 HTTP(s) 狀態嗎 Protocol : 請求協議 HOST : 請求的主機名 URL : 請求的資源目錄位置 Body : 請求大小 Caching : 請求的快取 Content-Type : 伺服器響應的實體型別 Process : 是誰(程序)傳送的 Comments : 備註 Custom : 自定義

當我們點選某一條請求後

在右邊的 Insepector 中就可以看到具體的請求和返回資訊內容了

說到這裡

你會發現

這他媽的不就和上次講的 Chrome 的開發工具面板差不多麼

稍安勿躁

接下來就說說怎麼來配置手機

使用 Fiddler 來抓取我們手機上的資料

在你的 Fiddler 中

像以下設定

接著

讓你現在的這臺電腦

和你的手機都連在同一個 wifi 下

接著

檢視你電腦的 ip 地址

在你的手機上

開啟你連線的 wifi

設定 http 代理伺服器和埠

這裡的伺服器地址就是你剛找到的 IPv4 地址

埠 8888

緊接著

手機開啟瀏覽器輸入你的 IPv4 地址和埠

下載安裝證書

安裝完之後呢

Android手機這樣一般就可以用了

iPhone的話

還要授權一下

在你手機的

設定-->通用-->關於本機-->證書信任設定-->把剛剛下載的證書打上勾

ok

搞定

你手機的所有訪問都可以用Fiddler來抓包了

我現在就在我的手機上

開啟微信和網易雲音樂

可以看到我電腦上的 Fiddler

抓取到了!!

既然都抓到資料了

那麼接下里就來點騷操作吧

使用 Fiddler 來修改一下我們的請求和返回資料

應該很好玩!

我們來玩玩 b 站吧

手機開啟bilibili

這時候我們可以在 Fiddler 設定過濾

我們就針對 b 站的請求

然後我們在 Fiddler 按一下

ALT+F11

按完之後呢

所有伺服器的返回都會被 Fiddler 攔截

ok

接下來

比如我要看 b 站的熱門內容

那麼我們點選這個 熱門 的tab

可以看到

Fiddler 攔截了

我們點選這個請求

然後點選右邊的 Inspectors

這時候可以看到 b 站伺服器給我們返回了熱門內容

也就是在這個時候

我們來篡改一下這些資料

讓我們改的資料顯示到手機上

那就把第一個視訊的標題改了吧

改成

小帥b太帥了!!

改完之後呢

我們點選 Run to Completion

也就是將我們的資料發給手機

那麼這個時候

看看我們的手機吧

oh

不好意思

小帥b成為b站熱門第一了!

哈哈哈

ok

以上我們演示的是返回資料的攔截

那麼對於請求時的攔截

快捷鍵是** F11**

相信你也知道怎麼玩