一、自动播放脚本
编写此脚本的原因是,女朋友单位要求刷*.zhihuishu.com
课程,先是想到用python自动化来处理,折腾半天不太好使;后面想到用油猴脚本来处理,安装了很多个现成的脚本,依旧不好使,只能自己写了,这个懒还是偷不了,我一个破后端,只能又捡起javascript
来拼凑一下,好在好使,多年未碰前端了,代码有点烂,仅供参考
如下脚本亲测好使,脚本内容如下
// ==UserScript==
// @name 智慧树自动播放
// @namespace *://*.zhihuishu.com/
// @version 1.0
// @description 智慧树自动播放
// @author Td
// @match *://*.zhihuishu.com/*
// @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant none
// ==/UserScript==(function() {'use strict';setInterval(function () {for (var i = 0; i < document.getElementsByTagName('video').length; i++) {var current_video = document.getElementsByTagName('video')[i]// 静音0,0.1=音量10%current_video.volume = 0.1// 1.5倍速current_video.playbackRate = 1.5// 视频播放结束后,模拟点击“下一课”if (current_video.ended) {console.log("下一课")var chapterNodeList = document.querySelectorAll('.chapter-tree-74 .left')var isPlay = 0var j = 0for (; j < chapterNodeList.length; j++ ) {if (1 == isPlay) {break}var parentDiv = chapterNodeList[j].parentNode//console.log(parentDiv)var isFinish = parentDiv.querySelector('.right')//console.log(isFinish)if (!isFinish) {console.log('未完成视频,马上播放,j--==' + j)isPlay = 1break}console.log(isFinish.innerText)if ('已完成' !== isFinish.innerText) {console.log('未完成视频,马上播放,j==' + j)isPlay = 1break}}//console.log(j)chapterNodeList[j].click()}// 如果视频被暂停,重新播放if (current_video.paused) {current_video.play()}}}, 2000)
})();
二、安装和使用
先安装好油猴,然后添加新脚本
,将上面脚本复制粘贴进去即可,比较简单
Tampermonkey油猴插件——安装与使用教程