抖音平臺分析

手機端抓包環境準備

  • 手機APP抓包分析 環境搭建(夜神模擬器+burp/fidder);
  • 瀏覽器中F12用手機界面模式重新加載,看network信息,部分手機瀏覽器可以訪問的功能可以以此方式獲取。

基本結構

  1. 整個社區生態:用於短視頻上傳、點贊、分享等,記錄美好生活,也加快多種生活方式的傳播。這是一個15秒音樂短視頻社區,視頻資源海量,未進行視頻特徵細分,存在營銷號通過不同方式實現漲粉,轉發等目的。

  2. 登陸與註冊:用戶每個用戶需要登陸後才能發現更多視頻、點贊、評論、關注等,一般通過手機號接收驗證碼的方式進行登陸,如果是第一次登陸則需要完成信息設置密碼等,之後可以通過密碼登陸,也可以通過第三方QQ等實現登陸。總的來說,抖音提供多種登錄選擇方式:手機號登錄、第三方登錄、密碼登錄,突出登錄功能,弱化註冊過程。
    • 在手機模擬器中登陸一直出現“相同圖片點擊”的驗證過程,並且一段時間內嘗試發送手機驗證碼的次數不能超過3-4次,將會提示發送太頻繁。
  3. 爬取與註冊限制:

  4. 基本使用:查看用戶信息,關注用戶,觀看熱點視頻,點贊、評論視頻,轉發視頻

  5. 請求內容基本結構:抖音APP的包結構名爲com.ss.android.ugc.aweme,在請求中一般被放在User-Agent中;在APP請求的URL信息中包含了大量的設備信息,通過param的方式附加在URL後。
    • 基本url請求 包含 p1-dy.byteimg 其中可以從p1到p9,用於傳輸圖片,分配 /large/ /img/ /obj/ ,還有p3.pstatp等,v1-dy 等用於傳輸視頻信息,一般在ixigua.com後綴上
    • 國外訪問 tiktokv.com
    • 每一個鏈接中包含簽名信息
    • 常見Use-Agent: "com.ss.android.ugc.aweme/380 (Linux; U; Android 8.0.0; zh_CN_#Hans; MHA-AL00; Build/HUAWEIMHA-AL00; Cronet/58.0.2991.0)"
    • 常見的設備信息參數 common_params = {
      "iid": self.device_info['iid'],
      "idfa": self.device_info['idfa'],
      "vid": self.device_info['vid'],
      "device_id": self.device_info['device_id'],
      "openudid": self.device_info['openudid'],
      "device_type": self.device_info['device_type'],
      "os_version": self.device_info['os_version'],
      "os_api": self.device_info['os_api'],
      "screen_width": self.device_info['screen_width'],
      "device_platform": self.device_info['device_platform'],
      "version_code": CONFIG['APPINFO']['version_code'],
      "channel": CONFIG['APPINFO']['channel'],
      "app_name": CONFIG['APPINFO']['app_name'],
      "build_number": CONFIG['APPINFO']['build_number'],
      "app_version": CONFIG['APPINFO']['app_version'],
      "aid": CONFIG['APPINFO']['aid'],
      "ac": "WIFI",
      "pass-region": "1", # new
      # "js_sdk_version": "1.3.0.1"
      }
    •  

常用接口鏈接

hot_energy_url = 'https://api.amemv.com/aweme/v1/hotsearch/positive_energy/billboard/'
hot_trend_url = 'https://api.amemv.com/aweme/v1/category/list/'
topic2video_url = 'https://api.amemv.com/aweme/v1/challenge/aweme/'
https://aweme.snssdk.com/aweme/v1/user/ # 用戶詳細信息
https://aweme.snssdk.com/aweme/v1/user/following/list/ # 關注列表
https://aweme.snssdk.com/aweme/v1/user/follower/list/ # 粉絲列表
https://aweme.snssdk.com/aweme/v1/aweme/post/ # 用戶發佈的視頻
https://aweme.snssdk.com/aweme/v1/aweme/favorite/ # 用戶喜歡的視頻
https://aweme.snssdk.com/aweme/v1/aweme/detail/ # 視頻詳細信息
https://aweme.snssdk.com/aweme/v1/comment/list/ # 視頻評論信息
https://aweme.snssdk.com/aweme/v1/music/detail/ # 音樂原聲的詳細信息
https://aweme.snssdk.com/aweme/v1/music/aweme/ # 音樂原聲的視頻列表
https://aweme.snssdk.com/aweme/v1/hot/search/list/ # 熱搜榜
https://aweme.snssdk.com/aweme/v1/hotsearch/aweme/billboard/ # 視頻榜(固定20條)
https://aweme.snssdk.com/aweme/v1/hotsearch/music/billboard/ # 音樂榜(固定30條)
https://aweme.snssdk.com/aweme/v2/user/recommend/ # 推薦用戶列表(需要登錄)

視頻

  • 視頻鏈接主要包含以下:v1-dy.ixigua.com,v3-dy.ixigua.com,v6-dy.ixigua.com,v9-dy.ixigua.com,大部分視頻鏈接包含expires的參數,用於表示過期時間,一般url有效期是一個小時

加密

  • 每一個查看的鏈接上包含,一些加密信息,通過簽名參數: as, mas, ts, cp等加密算法與協議

其他信息

  • APP通過定期的向ib-hl.snssdk.com發送/service/2/app_log/的POST請求,實現向服務器發送本機相關的一些信息
  • APP向restapi.amap.com請求地理信息
  • 一般URL中傳遞了retry_type=no_retry的內容都屬於上傳本地設置,狀態等信息到服務器上。
  • 通過向p3-dy.byteimg.com,去獲取抖音的對應規格的圖片信息 /aweme/300x400/17aba000e40f0f37b5ae3.jpeg,此時User-Agent 爲com.ss.android.ugc.aweme/620 (Linux; U; Android 5.1.1; zh_CN; SM-G955F; Build/JLS36C; Cronet/58.0.2991.0)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章