用户:StarHeartHunt/bv av互转
1.https://www.zhihu.com/question/381784377/answer/1099438784
2.TG:PinTG
/* 方案一: 来自 https://www.zhihu.com/question/381784377/answer/1099438784 */ var table = "fZodR9XQDSUm21yCkr6zBqiveYah8bt4xsWpHnJE7jL5VG3guMTKNPAwcF", tr = new Object(); for (var i = 0; i < 58; i++) { tr[table[i]] = i; } var s = [11, 10, 3, 8, 4, 6], xor = 177451812, add = 8728348608; function dec(x) { var r = 0; for (var i = 0; i < 6; i++) { r += tr[x[s[i]]] * 58 ** i; } return (r - add) ^ xor; } function enc(x) { x = (x ^ xor) + add; r = "BV1 4 1 7 ".split(""); for (var i = 0; i < 6; i++) { r[s[i]] = table[Math.floor(x / 58 ** i) % 58]; } return r.join(""); } console.log(dec("BV17x411w7KC")); console.log(enc(170001)); /* 方案二 */ function hget(type, id) { $http.get({ url: `http://api.bilibili.com/x/web-interface/archive/stat?${type}id=${id}`, handler: resp => { var data = resp.data.data; console.log({ bvid: data.bvid, aid: data.aid }); } }); } hget("a", "170001"); hget("bv", "BV17x411w7KC");