溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python怎么抓取抖音app

發(fā)布時間:2022-05-07 11:04:33 來源:億速云 閱讀:340 作者:iii 欄目:大數(shù)據(jù)

這篇文章主要講解了“python怎么抓取抖音app”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“python怎么抓取抖音app”吧!

抓取app的話,首先需要一個手機或者在自己的電腦上安裝模擬器,模擬器你需要知道各個模擬器的默認端口

第二步,抓包

抓包的工具很多,找到自己覺得方便的就行,我這里推薦大家的是mitmproxy

mitmproxy是一個支持HTTP和HTTPS的抓包程序,有類似Fiddler、Charles的功能,只不過它是一個控制臺的形式操作。

mitmproxy還有兩個關聯(lián)組件。一個是mitmdump,它是mitmproxy的命令行接口,利用它我們可以對接Python腳本,用Python實現(xiàn)監(jiān)聽后的處理。另一個是mitmweb,它是一個Web程序,通過它我們可以清楚觀察mitmproxy捕獲的請求。

手機和PC在同一個局域網(wǎng)內,設置代理為mitmproxy的代理地址,這樣手機在訪問互聯(lián)網(wǎng)的時候流量數(shù)據(jù)包就會流經(jīng)mitmproxy,mitmproxy再去轉發(fā)這些數(shù)據(jù)包到真實的服務器,服務器返回數(shù)據(jù)包時再由mitmproxy轉發(fā)回手機,這樣mitmproxy就相當于起了中間人的作用,抓取到所有Request和Response,另外這個過程還可以對接mitmdump,抓取到的Request和Response的具體內容都可以直接用Python來處理,比如得到Response之后我們可以直接進行解析,然后存入數(shù)據(jù)庫,這樣就完成了數(shù)據(jù)的解析和存儲過程。

安裝mitmproxy(建議換到國內源安裝,方法自行百度)

pip3 install mitmproxy

對于mitmproxy來說,如果想要截獲HTTPS請求,就需要設置證書。mitmproxy在安裝后會提供一套CA證書,只要客戶端信任了mitmproxy提供的證書,就可以通過mitmproxy獲取HTTPS請求的具體內容,否則mitmproxy是無法解析HTTPS請求的。

首先,運行以下命令產(chǎn)生CA證書,并啟動mitmdump:進入到目錄cmd中直接運行,

mitmdump

然后在用戶目錄下找到CA證書

python怎么抓取抖音app

證書一共5個,表1-1簡要說明了這5個證書。

表1-1 5個證書及其說明

mitmproxy-ca.pem

PEM格式的證書私鑰

mitmproxy-ca-cert.pem

PEM格式證書,適用于大多數(shù)非Windows平臺

mitmproxy-ca-cert.p12

PKCS12格式的證書,適用于Windows平臺

mitmproxy-ca-cert.cer

與mitmproxy-ca-cert.pem相同,只是改變了后綴,適用于部分Android平臺

mitmproxy-dhparam.pem

PEM格式的秘鑰文件,用于增強SSL安全性

Windows

雙擊mitmproxy-ca.p12,就會出現(xiàn)導入證書的引導頁,如圖1-61所示。

直接點擊“下一步”按鈕即可,會出現(xiàn)密碼設置提示,

這里不需要設置密碼,直接點擊“下一步”按鈕即可。

接下來需要選擇證書的存儲區(qū)域,這里點擊第二個選項“將所有的證書都放入下列存儲”,

然后點擊“瀏覽”按鈕,選擇證書存儲位置為“受信任的根證書頒發(fā)機構”,

接著點擊“確定”按鈕,然后點擊“下一步”按鈕。

最后,如果有安全警告彈出,直接點擊“是”按鈕即可。

這樣就在Windows下配置完CA證書了。

圖我都沒有貼,感覺沒必要,基本都是下一步,傻瓜式

Android

將剛才,我圖中圈出來的發(fā)到手機上安裝,mitmproxy-ca-cert.cer。如果這個在手機上安裝失敗,則去將mitmproxy-ca-cert.pem發(fā)到手機上安裝。

可能會有安全警告,直接忽略就行,完成。

配置代理IP。連接同一局域網(wǎng),在WiFi的設置中添加代理IP和端口,代理IP是電腦的IP,端口是抓包監(jiān)控的端口。

cmd運行著段代碼   mitmdump -s decode_douyin_fans.py -p 8889  說明:mitmdump -s py文件 -p 模擬器代理端口

也可以直接運行mitmdump, 默認端口是8080;

可以參考這個:

import json
# 這個地方必須這么寫 函數(shù)名:response
def response(flow):
   # 通過抓包軟包軟件獲取請求的接口
   if 'aweme/v1/user/follower/list' in flow.request.url:
       # 數(shù)據(jù)的解析
       for user in json.loads(flow.response.text)['followers']:
           douyin_info = {}
           douyin_info['share_id'] = user['uid']
           douyin_info['douyin_id'] = user['short_id']
           douyin_info['nickname'] = user['nickname']
           print('粉絲列表:', douyin_info, '---------------------------')

感謝各位的閱讀,以上就是“python怎么抓取抖音app”的內容了,經(jīng)過本文的學習后,相信大家對python怎么抓取抖音app這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI