TamperMonkey脚本开发_无限制视频提取
// ==UserScript==
// @name Download Water
// @namespace 使用说明网址
// @version 2.0
// @description 自动(描述)
// @author zavay
// @match *://*/*
// @icon /s2/favicons?sz=64&domain=
// @grant none
// ==/UserScript==
(function() {
'use strict';
// }
/**
* 1.首次执行
*/
console.log('开始执行!');
//首次加载
document.querySelector(".chapter_v_1471648 i").click();
//自动播放视频
document.querySelector("video").autoplay = true;
//倍速 10倍速
//("#qq_player_html5_api").playbackRate = 10;
//运行第几个视频
let classNum = 1 ;
console.log("正在播放第"+classNum+"个课~");
/**
* 2.定时器用来循环判断进度条 缓冲完毕就点击下一章
*/
let DSQ = window.setInterval(function(){
//监控缓冲进度条
let load = document.querySelector(".vjs-load-progress").style.width;
console.log("缓冲进度: "+load);
//当缓冲完毕时
if(load == "100%"){
//点击下一章
document.querySelector(".chapter_tool .c1").click();
}else{
//改动进度值的时候需要暂停才能移动
//所以我们先来个暂停
//暂停
//("video").pause();
if(document.querySelector("video").paused === false){
//暂停
document.querySelector(".vjs-control-bar button").click();
}
//获取视频总时长
let allTime = document.querySelector("video").duration
//(("video").paused);
//改动进度值
let hcNStr = load.split("%")[0]; //20%
let jdN = parseInt(+hcNStr-1);//15
let buffBFB = jdN*0.01;
let buffTime = parseInt(allTime*buffBFB);
let jdNStr = jdN+"%";
console.log("跟上进度"+jdN);
if(document.querySelector("video").paused === true){
//跟进度 跟上一点缓冲时间
document.querySelector("video").currentTime = buffTime;
//(".vjs-slider-bar"). = jdNStr;
//跟上进度之后然后恢复播放
document.querySelector(".vjs-control-bar button").click();
}
}
},10000);
/**
* 3.监听器用来 点击之后打印第几门课 并播放
*/
//监听器方法
let JTQmethod =function(){
//第几个视频了
classNum++;
console.log("正在播放第"+classNum+"个课~");
// //点击播放按钮
// (".vjs-button-icon").click();
//自动播放视频
document.querySelector("video").autoplay = true;
}
//监听器执行
document.querySelector(".chapter_tool .c1").addEventListener('click',JTQmethod);
})();