一篇文章教會你用Python抓取抖音app熱點數據


今天給大家分享一篇簡單的安卓app數據分析及抓取方法。以抖音為例,我們想要抓取抖音的熱點榜數據。
一篇文章教會你用Python抓取抖音app熱點數據

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

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

安裝完成后要設置代理,依次點擊代理——代理設置。
一篇文章教會你用Python抓取抖音app熱點數據

然后在手機端設置代理,如下圖所示:

一篇文章教會你用Python抓取抖音app熱點數據

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

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

電腦端安裝方法:依次點擊幫助——ssl代理——安裝charles root證書 ,按下圖進行安裝。
一篇文章教會你用Python抓取抖音app熱點數據

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

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

最后再手機端依次點擊設置——安全——從SD卡安裝。
一篇文章教會你用Python抓取抖音app熱點數據

為證書命名,點擊確認就安裝成功了。

打開charles,然后打開抖音app的熱點榜界面,在charles很容易就找到了數據接口,一次就返回了50條數據,如下圖所示。
一篇文章教會你用Python抓取抖音app熱點數據

它的url信息如下圖所示。

一篇文章教會你用Python抓取抖音app熱點數據

此接口只能返回這一時刻的熱點數據,要想返回新的數據,就要變換參數信息,但是App端的數據接口參數都比較復雜,這里我們不再深入分析。

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

Appium腳本如下圖所示:
一篇文章教會你用Python抓取抖音app熱點數據

這個自動化測試腳本比較簡單,主要是重復獲取熱點最新信息。

Mitmproxy腳本如圖:
一篇文章教會你用Python抓取抖音app熱點數據

有4點需要注意的地方:

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

2.要想在此腳本運行外置函數,必須加上前兩行,要不然會出錯;

3.腳本中if url in flow.request.url為數據流判斷條件,如果url在該數據流的url請求數據中,則判斷該數據為抖音app熱點數據;

4.最后在腳本所在路徑運行以下程序:
一篇文章教會你用Python抓取抖音app熱點數據

最后再運行appium自動化測試腳本,就大功告成了。

如果需要本文的代碼,請在后台回復“抖音”二字,覺得不錯,記得給個star噢~

看完本文有收獲?請轉發分享給更多的人

IT共享之家

一篇文章教會你用Python抓取抖音app熱點數據

入群請在微信后台回復【入群】
想學習更多Python網絡爬蟲與數據挖掘知識,可前往專業網站:http://pdcfighting.com/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM