[Demo ]javascript 英華學堂在線 刷課腳本


<center><font color=#DC143C size=6> 警告 FBI WARNING</font></center>

![警告](https://img-blog.csdnimg.cn/20201223122306992.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjM3NTM1Ng==,size_12,color_FFFFFF,t_70#pic_center)

<font color=#DC143C size=6 face="黑體">此文章僅供學習參考,請勿使用在網站使用!!!</font>
<font color=#DC143C size=6 face="黑體">此文章僅供學習參考,請勿使用在網站使用!!!</font>
<font color=#DC143C size=6 face="黑體">此文章僅供學習參考,請勿使用在網站使用!!!</font>

---
# 使用Tampermonkey油猴掛載JS代碼,實現自動化播放課程。目前未完全實現,僅學習使用。

>Module:JavaScript 、chrome、Tampermonkey油猴
>Status:未完成,Demo Version1.0
>@Author:xiaozhu_sai
>Date:2020/12/22


**腳本代碼(功能未能完整實現):**
```javascript
//@Author:xiaozhu_sai
//Date:2020/12/22
//初始准備,點開第一章第一節界面


document.evaluate('/html/body/div[5]', document).iterateNext().style.display = 'none'
//定位課程目錄
var group = document.getElementsByClassName('group two ');
//課程章節 item
window.unit = 0;

//執行一次/3s
function start(){
//獲取當前頁面video元素
var video = document.getElementsByTagName('video');

//獲取當前章小節列表 38節
//定位課程目錄 test
var group = document.getElementsByClassName('group two ');
var navlist = document.getElementsByClassName('detmain-navlist')[0];
var item = navlist.getElementsByClassName('item');
//展開所有章節
for (i=0;i<group.length;i++){group[i].className = "group two on"; }

//空頁面, 跳轉下一章
if (video.length == 0){
//章節加一
window.unit += 1;

//下一節
item[window.unit].getElementsByTagName('a')[0].click();
}
//視頻已播放完
if(video[0].ended == true){
//章節加一
window.unit += 1;

//下一節
item[window.unit].getElementsByTagName('a')[0].click();
}
//未觀看&未看完的視頻,播放
if (video[0].paused == true && video[0].ended == false){
//靜音
video[0].volume = 0;
//開始播放當前視頻
video[0].play();
// //測試 加速播放
// video[0].playbackRate = 8;
}
console.log('start ',i++, window.unit)

//監聽播放結束
//Todo:因為網絡原因暫停-事件
//video[0].addEventListener('ended', function(){foo(video, item);}, false);
}

var i = 1
//每分鍾執行一次
setInterval(start, 1*1000);


```


## 功能分析:
- 播放每一節的視頻,存在空頁面章節(測驗章節)
- 后台判斷課程是否觀看完成,是看在視頻頁面**停留時間**,所以無法單純使用playbackRate加速播放解決。
- 當前視頻播放完,點擊進入下一章節
- 在中間章節時,會彈出驗證碼對話框。由於警告,無法使用python(selenium)/OCR識別解決。
- 由於點擊章節頁面刷新,控制台腳本失效。使用油猴腳本瀏覽器插件運行腳本
## 功能實現&未實現
### [ √ ] 已實現
- 運行腳本后,自動檢測並播放視頻。
- 播放完后自動跳轉到下一章節

### [ X ] 未實現
- 遇到空章節(空頁面),腳本自動關閉
- 章節低頻跳出的驗證碼,未實現自動識別通過
- 因網絡原因可能導致視頻暫停,等待,直到網絡良好后繼續播放課程
## 步驟

1. 安裝油猴插件,推薦使用Chrome或FireFox(Edge Opera)
[歡迎來到 Greasy Fork,這里是一個提供用戶腳本的網站。](https://greasyfork.org/zh-CN/)
[https://www.tampermonkey.net/](https://www.tampermonkey.net/)


2.
如圖操作插件
![在這里插入圖片描述](https://img-blog.csdnimg.cn/20201223125018753.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjM3NTM1Ng==,size_8,color_FFFFFF,t_70#pic_center)
3. 將頭部改為
*狗xx狗為自己的課程第一章第一節的url*
```javascript
// ==UserScript==
// @name 觀看腳本 Ver1.0
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @match http://狗XX狗
// @grant none
// ==/UserScript==
空白處粘貼上述腳本代碼
```
4. 開啟腳本,刷新網頁即可.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM