python爬取抖音APP視訊教程
本文講述爬取抖音APP視訊資料(本文未完,後面還有很多地方優化總結)
公眾號回覆:抖音
即可獲取原始碼
python爬蟲人工智慧大資料(公眾號)
1、APP抓包教程,需要用到fiddler
2、尋找返回使用者aweme_count和uid資料的介面
進入我關注的抖音使用者主頁,找到使用者的抖音號並記錄下來,該抖音號為unique_id(unique_id區別於uid)
使用者主頁有如下資料:如圖所示
注:該頁面並沒有返回我們需要的uid資料,需要通過如下方式搜尋,在另外一個頁面抓包才能獲取
抖音主頁點選搜尋圖示
輸入使用者主頁獲取到的unique_id值,並點選搜尋
進入該頁面,切換到使用者欄,該頁面會返回我們需要的資料和介面
fiddler抓包,該介面返回我們需要的兩個引數,作品數aweme_count和使用者uid
上程式碼,input輸入的為使用者主頁的unique_id,傳入下面的方法中
拿到unique_id,我們請求介面,提取我們需要的資料aweme_count和uid,並列印成功,這一步結束
注:本網站為HTTPS加密,需要加verify=False引數,並要加headers
3、接下來尋找視訊播放頁面介面
手機切換到使用者主頁,會出現我們需要抓包的介面,因為使用者主頁有視訊,自然介面在這裡面
抓包,成功抓到下面圖中所示的share_url介面,該介面需要我們傳2個引數,就是上一步我們獲取到的aweme_count和uid
注:share_url並不是最終我們真正下載視訊的介面,需要對share_url返回的資料進一步提取,才能找到真正的視訊介面
上程式碼,但該介面測試一些發現有些不方便用,經查閱網上一些資料,發現需要用到抖音之前的老介面,如程式碼中所示
這裡獲取得到的video_urls是一個假的視訊介面,需要進一步提取真的視訊介面
將video_urls傳進下載視訊的方法中,中間我呼叫了get_download_url方法,進一步提取真正的視訊介面
提取真正視訊介面,通過get請求假介面,在返回的一大坨響應中通過正則匹配提取
這裡簡單截圖了兩個視訊介面的區別,這幅圖是假的視訊介面,雖然也有視訊,但並不是真正的
下面這個才是我們真正的視訊介面,整個頁面只有一個視訊,直接下載視訊資料
至此,抖音爬取告一段落,還遺留兩個問題,尚未完全搞出來
1、如何獲取所有使用者的抖音unique_id,而不必手動每次去檢視後輸入
2、如何去水印
這兩個問題也已經嘗試,沒有那麼容易,有興趣的同學歡迎測試,有思路歡迎探討
Python爬蟲人工智慧大資料(公眾號)
原始碼已傳技術學習群
歡迎新增好友學習探討,備註(CSDN)