啪啪啪研習所無限看2.1

繞過前端付費會員驗證

Author
張志強
Daily installs
32
Total installs
8,068
Ratings
57 0 3
Version
0.2
Created
Updated
License
N/A
Applies to

Author's Description

// ==UserScript==
// @name 啪啪啪研習所無限看2.1
// @namespace https://knowlet.me/
// @version 0.2
// @description 繞過前端付費會員驗證
// @author knowlet
// @require https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.18.2/babel.js
// @require https://cdnjs.cloudflare.com/ajax/libs/babel-polyfill/6.16.0/polyfill.js
// @match https://jav101.com/play/*
// ==/UserScript==

/* jshint ignore:start */
var inline_src = (<> {
testRange = Math.floor((pn - no) / 2);
no += testRange;
})
} catch (err) {
pn = no;
no -= testRange;
}
if (testRange) return findLastIdx(no, pn, testRange);
return no;
}

let dot = 3;
const html = document.querySelector('h2.videoTitle').innerHTML;
const dotting = setInterval(_ => { document.querySelector('h2.videoTitle').innerHTML = html + `破解中請稍後${new Array(++dot % 10).join('.')}`; }, 789);

const num = localStorage.getItem(avId) || await findLastIdx(900, 1500, 100);
localStorage.setItem(avId, num);

let m3u8 = '#EXTM3U\n#EXT-X-VERSION:3\n#EXT-X-PLAYLIST-TYPE:VOD\n#EXT-X-INDEPENDENT-SEGMENTS\n#EXT-X-TARGETDURATION:8\n#EXT-X-MEDIA-SEQUENCE:0';
for (let i = 0; i <= num; ++i) {
m3u8 += `\n#EXTINF:8.341667,\nhttps://sss.jav101.com/static/${avId}/ts/${avId}-${i}.ts`;
}
m3u8 += '\n#EXT-X-ENDLIST';
videojs('videoJav').dispose();

clearInterval(dotting);
document.querySelector('h2.videoTitle').innerHTML = html + '破解完成!';

const createObjectURL = (window.URL && URL.createObjectURL.bind(URL)) || (window.webkitURL && webkitURL.createObjectURL.bind(webkitURL)) || window.createObjectURL;
const blobURL = createObjectURL(new Blob([m3u8], {type: 'application/x-mpegURL'}));
document.querySelector('.vcontainer').innerHTML = ``;
var player = videojs('videoJav', {
"autoplay": false,
"muted": false,
"width": 790,
"height": 444
}, function() {
this.hotkeys({
volumeStep: 0.1,
seekStep: 5,
enableModifiersForNumbers: false,
enableVolumeScroll:false
});
});
})(location.pathname.split('/').pop());

/* jshint ignore:start */
]]>).toString();
var c = Babel.transform(inline_src, { presets: [ "es2015", "es2016" ] });
eval(c.code);
/* jshint ignore:end */