基础教育教师培训网,全自动学习!

https://jx19qy.gpa.enetedu.com/

  1. // ==UserScript==
  2. // @name 基础教育教师培训网,全自动学习!
  3. // @namespace https://gf.qytechs.cn/
  4. // @version 0.5
  5. // @description https://jx19qy.gpa.enetedu.com/
  6. // @author You
  7. // @match https://jx19qy.gpa.enetedu.com/mycourse/MyCourse/MyEventList*
  8. // @match https://jx19qy.gpa.enetedu.com/Event/MyjoinEvent*
  9. // @match https://jx19qy.gpa.enetedu.com/Event/CourseWare*
  10. // @match https://jx19qy.gpa.enetedu.com/MyCourse/Process*
  11. // @require https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js
  12. // @grant GM_setValue
  13. // @grant GM_getValue
  14. // ==/UserScript==
  15.  
  16. (function() {
  17.  
  18. window.onload=function(){
  19. if((window.location.href).substring(0,78)==='https://jx19qy.gpa.enetedu.com/mycourse/MyCourse/MyEventList?studentproject_id')
  20. {
  21. var main_1=[];
  22. $(".item li").each(function(){//获取主目录未完成学习任务
  23. var url=$(this).find("a").attr("href");
  24. var url_ok=$(this).find("i").html();
  25. if(url_ok==="[未完成]"){
  26. var s={"url":url};
  27. main_1.push(s);
  28. }
  29. });
  30. GM_setValue("list",[]);//储存学习链接上级按键命令
  31. GM_setValue("list_url",[]);//储存学习页面url
  32. if(main_1.length>0){
  33. if (confirm("你还有:"+main_1.length+"个任务未完成!下面将自动获取未完成学习的每一个子项,请不要操作电脑!完成扫描后将自动开始学习!!")) { //if语句内部判断确认框
  34. saomiao(main_1);//扫描未完成学习按键
  35. } else {
  36.  
  37. }
  38. }else{
  39. alert("你已完成全部学习任务!");
  40. }
  41. }
  42. }
  43. function saomiao(main_1){
  44. var xuexi_list_1=main_1;
  45. var winURL=null;
  46. var main_n=0;
  47. if(main_n<xuexi_list_1.length){//ss=1用于此程序扫描判断,用户自行进入页面则不监测
  48. winURL= window.open(xuexi_list_1[main_n].url+"&ss=1", '_blank');
  49. const loop = setInterval(() => {
  50. if (winURL && winURL .closed) {
  51. main_n++;
  52. if(main_n<xuexi_list_1.length){
  53. winURL= window.open(xuexi_list_1[main_n].url+"&ss=1", '_blank');
  54. }else{
  55. clearInterval(loop);
  56. get_s_url(xuexi_list_1);//获取学习页面url
  57. }
  58. }
  59. }, 500);
  60. }
  61. }
  62. function get_s_url(xuexi_list_1){
  63. var tt=GM_getValue("list");
  64. var winURL=null;
  65. var main_n=0;
  66. if(main_n<tt.length){
  67. var tt_s=tt[main_n].split(",");
  68. winURL= window.open(tt_s[2]+"&tt="+main_n, '_blank');
  69. const loop = setInterval(() => {
  70. if (winURL && winURL .closed) {
  71. console.log(GM_getValue("list_url").length);
  72. main_n++;
  73. if(main_n<tt.length){
  74. var tt_s=tt[main_n].split(",");
  75. winURL= window.open(tt_s[2]+"&tt="+main_n, '_blank');
  76. }else{
  77. clearInterval(loop);
  78. study_s();
  79. }
  80. }
  81. }, 500);
  82. }
  83. }
  84. function study_s(){//自动学习页面
  85. var tt=GM_getValue("list_url");
  86. var winURL=null;
  87. var main_n=0;
  88. if(main_n<tt.length){
  89. winURL= window.open(tt[main_n], '_blank');
  90. const loop = setInterval(() => {
  91. if (winURL && winURL .closed) {
  92. main_n++;
  93. if(main_n<tt.length){
  94. winURL= window.open(tt[main_n], '_blank');
  95. }else{
  96. clearInterval(loop);
  97. }
  98. }
  99. }, 500);
  100. }
  101. }
  102.  
  103. setInterval(function() {
  104. if((window.location.href).substring(0,48)==="https://jx19qy.gpa.enetedu.com/Event/MyjoinEvent")
  105. {
  106. if(getQueryString("ss")!==null){
  107. var url1=window.location.href;
  108. var list=[];
  109. var url=url1.replace("https://jx19qy.gpa.enetedu.com","").replace("&ss=1","");
  110. $("table tbody tr td a").each(function(){
  111. var s=($(this).attr("href"));
  112. s=s.replace("javascript:ShowCourseware","");
  113. s=s.replace("(","");
  114. s=s.replace(")","");
  115. s=s.replace("''",url);
  116. if(s!==""&&s!=undefined){
  117. var ss=s.split(",");
  118. if(ss[1]!=null){
  119. list.push(s);
  120. }
  121. }
  122. });
  123. set_v(list);
  124. }
  125. if(getQueryString("tt")!==null){
  126. var n=getQueryString("tt");
  127. var ss1=GM_getValue("list");
  128. var dd=ss1[n].split(",");
  129. ShowCourseware(dd[0],dd[1],'')
  130. }
  131. }
  132. if((window.location.href).substring(0,47)==="https://jx19qy.gpa.enetedu.com/Event/CourseWare"){
  133. var sss=[];
  134. $("table tbody tr").each(function(){
  135. var url=$(this).find("a").attr("href");
  136. var url_ok=$(this).find("span").html();
  137. var time=$(this).find("span").parent().prev().html();
  138. if(url_ok!== undefined && url!==undefined && (url_ok.indexOf("未学完") !== -1||url_ok.indexOf("未开始") !== -1)){
  139. var t= ClearBr(time);
  140. var f=(Number(t.split("分")[0])+1)*60;
  141. var ut=url+"&t="+f;
  142. sss.push(ut);
  143. }
  144. });
  145. set_url(sss);
  146. }
  147. if((window.location.href).substring(0,47)==="https://jx19qy.gpa.enetedu.com/MyCourse/Process"){
  148. if(getQueryString("t")!==null){
  149. var a = document.querySelector("iframe")
  150. var b = a.contentWindow.document;
  151. var c=b.getElementsByClassName("qplayer-pause")[0];
  152. var play_L=$(b.getElementsByClassName("qplayer-bar")).css("width");
  153. var play_t=$(b.getElementsByClassName("qplayer-barcurr")).css("width");
  154. if(c.className==="qplayer-pause"){
  155. var bt= b.getElementsByClassName("qplayer-center-btn");
  156. var jq_bt=$(bt);
  157. jq_bt.click();
  158. }
  159. if((parseInt(play_t))>=parseInt(play_L)-1){
  160. window.close();
  161. }
  162. var t=Number(getQueryString("t"));
  163. st_time++;
  164. if(st_time>=t){
  165. window.close();
  166. }
  167. }
  168. }
  169. }, 1000);
  170. var st_time=0;
  171. function set_url(u){
  172. var a=GM_getValue("list_url");
  173. var b=u;
  174. var c=b.concat(a);
  175. var d=repeat(c)
  176. GM_setValue("list_url",[]);
  177. GM_setValue("list_url",d);
  178. console.log(GM_getValue("list_url").length);
  179. window.close();
  180. }
  181. function set_v(u){
  182. var a=GM_getValue("list");
  183. var b=u;
  184. var c=b.concat(a);
  185. var d=repeat(c)
  186. GM_setValue("list",[]);
  187. GM_setValue("list",d);
  188. window.close();
  189. }
  190. //去除HTML标签
  191. function clear_html(html){
  192. return html.toString().replace(/<[^>]+>/g,"").innerText;//去掉所有的html标记
  193. }
  194. //获取url地址去除&t=XXX
  195. function get_url(url) {
  196. if(url===undefined)
  197. {
  198. return "";
  199. }else{
  200. var n=url.indexOf("&t=");
  201. var s=url.substring(0,n)
  202. return s;
  203. }
  204. }
  205. //获取参数t(要播放的时间单位为分钟)
  206. function getQueryString(name) {
  207. var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  208. var r = window.location.search.substr(1).match(reg);
  209. if (r != null) return unescape(r[2]); return null;
  210. }
  211. function ClearBr(key) {
  212. key = key.replace(/<\/?.+?>/g,"");
  213. key = key.replace(/[\r\n]/g, "");
  214. key = key.replace(/\s+/g, "");
  215. return key;
  216. }
  217. //去除重复数组
  218. function repeat(arr) {
  219.  
  220. for (var i = 0; i < arr.length; i++) {
  221. for (var j = i + 1; j < arr.length; j++) {//第一次是拿第一个数据和剩余的n-1个数据判断是否相等、第二次是拿第二个数据和剩余的n-1个数据相比
  222. if (arr[i] == arr[j]) {
  223.  
  224. var del = j;
  225.  
  226. arr.splice(del, 1);//找到了该数据的下标就删除了
  227. }
  228. }
  229. }
  230. return arr;
  231. }
  232. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址