首頁>科技>

今天給大家分享一篇簡單的安卓app資料分析及抓取方法。以抖音為例,我們想要抓取抖音的熱點榜資料。

要知道,這個資料是沒有網頁版的,只能從手機端下手。

首先我們要安裝charles抓包APP資料,它是一款收費的抓包修改工具,易上手,資料請求容易控制,修改簡單,抓取資料的開始暫停方便等優勢,網上也有漢化版,下載地址為http://www.zdfans.com/html/42074.html,一路預設安裝就ok了。

然後在手機端設定代理,如下圖所示:

在保證手機和電腦在同一區域網的情況下,代理伺服器主機名設為電腦的ip地址,埠設為8888。

最後在電腦端和手機端分別安裝證書。

手機端安裝方式:幫助——ssl代理——在移動裝置或遠端瀏覽器上安裝charles root證書。

再在模擬器瀏覽器中輸入chls.pro/ssl,會自動下載手機端證書

開啟charles,然後開啟抖音app的熱點榜介面,在charles很容易就找到了資料介面,一次就返回了50條資料,如下圖所示。

它的url資訊如下圖所示。

此介面只能返回這一時刻的熱點資料,要想返回新的資料,就要變換引數資訊,但是App端的資料介面引數都比較複雜,這裡我們不再深入分析。

為了解決這一問題,我們可以用appium定時模擬操控手機,然後用mitmproxy把資料攔截下來(關於appium、mitmproxy的簡介與安裝網上有很多教程,這裡不再贅述)

Appium指令碼如下圖所示:

這個自動化測試指令碼比較簡單,主要是重複獲取熱點最新資訊。

Mitmproxy指令碼如圖:

有4點需要注意的地方:

1.用mitmproxy抓包前,先把手機代理ip埠設定為8080,設定方法同上;

2.要想在此指令碼執行外接函式,必須加上前兩行,要不然會出錯;

3.指令碼中if url in flow.request.url為資料流判斷條件,如果url在該資料流的url請求資料中,則判斷該資料為抖音app熱點資料;

4.最後在指令碼所在路徑執行以下程式:

最後再執行appium自動化測試指令碼,就大功告成了。

  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 傳小米已放棄自研手機處理器