乐视视频下载
03-15 发布 | 08-17 更新 | 浏览数 20
AI 摘要
解密乐视视频播放页面的tkey参数生成算法,获取最新视频播放地址。
**播放页面会请求一个地址**
https://player-pc.le.com/mms/out/video/playJson.json?platid=1&splatid=103&tss=ios&id=69552126&detect=1&dvtype=800&accessyx=1&domain=www.le.com&tkey=-345858226&devid=c708dd5d22c134653a89c7b246adc714&source=1001&lang=cn®ion=cn&isHttps=1&isDbt=false&promoid=&callback=vjs_170893904036671**参数详解(未做备注为常量)**
platid=1
splatid=103
tss=ios
id=69552126 #视频id,url中可提取
detect=1
vtype=800
accessyx=1
domain=www.le.com
tkey=-345858226 #这个值需要计算得出
devid=c708dd5d22c134653a89c7b246adc714
source=1001
lag=cn
region=cn
ishttps=1
isDbt=false
promoid=
callback= #如果为空就反回json格式**关键的参数是tkey ,时间戳hash以后的一个数值,代表着请求的失效时间,实现方法如下**
var I4c = {
I: function(l, v) {
return l != v
},
f: function(l, v) {
return l << v
},
b: function(l, v) {
return l & v
},
B: function(l, v) {
return l < v
},
A: function(l, v) {
return l !== v
},
G: function(l, v) {
return l ^ v
},
v: function(l, v) {
return l === v
},
N: function(l, v) {
return l - v
},
k: function(l, v) {
return l >> v
},
m: function(l, v) {
return l | v
},
Y: function(l, v) {
return l == v
},
j: function(l, v) {
return l % v
},
h: function(l, v) {
return l > v
}
};
function rotateRight(e, t) {
var _1 = "h"
, _2 = "b";
for (var r, n = 0; I4c[_1](t, n); n++)
r = I4c[_2](1, e),
e >>= 1,
r <<= 31,
e += r;
return e
}
function getMmsKey(e) {
var _1 = "j"
, _2 = "rotateRight"
, _3 = "G";
var t = ("j",
48.36E2) < 68. ? ("error",
0x61) : (85.5E2,
0x11) < 84. ? (25.045E1,
0xb074319) : 39.62E1 <= (",",
25.2E+1) ? 88. : 32.84E2 >= (81.5E2,
36.7E0) ? 0x27 : 0x55 > 0x37 ? (79.219E0,
0x1c) : ("G",
0.363E1) <= 44.834E2 ? 98 : 95.48E+3 > (0x0,
0x45) ? (1.288E3,
"h") : ("b",
0x1b) >= (95.38E+0,
0x5e) ? (37.9E+0,
0x1a) : (19.1E+0,
71.6E2) > (0x30,
"error") ? (0x5e,
6.62E1) : (58.58E1,
57.5E+1)
, r = I4c[_1](t, 17)
, n = e;
n = rotateRight(n, r);
var o = I4c[_3](n, t);
return o
}
e = new Date().getTime() / 1000
console.log(getMmsKey(e))