巴哈動畫瘋 跳過網站直抓 m3u8 (更新版

要抓m3u8必需要下幾種東西

設備ID(device)、影片ID(sn)、廣告ID(s)

最下方有懶人包

設備ID(device)請直接用這個取得

animefun.getdeviceid();

影片ID(sn)請直接用這個取得

animefun.videoSn;

廣告ID(s)請直接用這個取得

getAd()[0];


不怎麼重要的狀態說明(看下去就知道了)

而在token.php回應了一些資訊

{"src":"","r18":0,"vip":0,"time":0,"login":0}

src 就不用說了,沒用

r18 只是分級用,回饋會有 0、1、2、4、5(好像沒有3,不確定)

vip 估計是0和1,1因該是vip

time 決定是否已經過了廣告了沒,0是還沒,1是有

login 是否登入,0是還沒,1是有


反正沒取得就知道了

http://ani.gamer.com.tw/ajax/videoCastcishu.php

參數有三個

sn 是影片ID

s 是廣告ID

ad=end而這個很重要

因為這個ad=end決定是否重新播放

當沒傳送ad=end,將會token的time=0而導致廣告出現

而有傳送ad=end,則有機會可以使time=1(估計是15秒)

http://ani.gamer.com.tw/ajax/m3u8.php?sn=[影片ID]&device=[取得device]

而最後就是取得m3u8

一般而言前面沒過的話會回應這樣

{src: "", error: 15}

而error: 15不知是啥意思(廣告沒過src就是空的)

而要成功

先videoCastcishu => 15秒 => videoCastcishu END => m3u8

{"src":"//gamer-cds.cdn.hinet.net/vod/gamer/gamer2_fast-07572248b0bc6da693cb3f53b6814c3ee5c2a961/hls-ae-2s/index.m3u8?token=1xuirtkTWPaVMnuoHLNBJA&expires=1487068703&bahaData=03187970a11ee75deee9e807446810a6d0a8c84c7c890cee587f6eeb7162:5795:0:PC:cabc3"}

而src就是m3u8檔目錄檔了

裡面放了四種解析度的 ts 分割 m3u8 檔 ( 360, 540, 720, 1080 )

而要成為單檔m3u8

請看上一篇文中 : 連結

以上


懶人包

所以又還不小心寫了個tampermonkey插件

有可能有Bug

https://greasyfork.org/zh-TW/scripts/26825