陕西省专业技术人员继续教育刷课脚本-JavaScript编写

news/2024/11/17 3:03:10/文章来源:https://www.cnblogs.com/tuziang/p/18390535

脚本

学习网站:陕西省专业技术人员继续教育学习平台: jxjy01.xidian.edu.cn
脚本地址:陕西省专业技术人员继续教育-刷课脚本

教程

1.插件安装(以Microsoft Edge浏览器为例)

image

打开最中间那个蓝色绿色的浏览器,谷歌之类的浏览器也可以

image

image

点击屏幕右上角三个点,图示位置,然后点击扩展

image
点击获取扩展

image

搜索Tampermonkey,并点击获取那个绿色的小猴子(篡改猴 - Microsoft Edge Addons)

image

到这里,你的油猴就已经装好啦!同时你可以看见你的浏览器上面多了个黑色图标。


那么接下来教大家安装脚本。

在这个浏览器上打开陕西省专业技术人员继续教育-刷课脚本,进入后点击安装脚本,安装完成刷新你学习网页就可以愉快使用了。

代码

关键代码分享:

function open(){window.location.reload();}// 监听,如果窗口变为活跃,那么强制刷新页面function isFocus(){if(!document.hidden){window.location.reload();console.log("Refresh the course status!");}}document.addEventListener("visibilitychange", isFocus);function coursesPage(){if(document.URL.search('yanxiu.qlteacher.com/project/yey2023/learning/learning')>1 ||document.URL.search('yanxiu.qlteacher.com/project/xx2023/learning/learning')>1 ||document.URL.search('yanxiu.qlteacher.com/project/cz2023/learning/learning')>1 ||document.URL.search('yanxiu.qlteacher.com/project/gz2023/learning/learning')>1){// 当且仅当窗口活跃if(!document.hidden){setTimeout(console.log("mainpage waiting..."), 500);var courseList1 = $("a:contains('继续学习')");var courseList2 = $("a:contains('开始学习')");var courseList3 = $("a:contains('温故知新')");if(courseList1.length) courseList1[0].click();else if(courseList2.length) courseList2[0].click();// else if(courseList3.length) courseList3[0].click();}}}setInterval(coursesPage, 3000)function coursePage(){var patt = /^https:\/\/player.qlteacher.com\/learning\/.*=.*/;if(document.URL.match(patt) == document.URL){var buttons = document.getElementsByTagName("button");for(var i=0; i<buttons.length; i++){var spans = buttons[i].getElementsByTagName("span");for(var j=0; j<spans.length; j++){if(spans[j].innerText){if(spans[j].innerText.includes("继续学习")){buttons[i].click();}if(spans[j].innerText.includes("开始学习")){buttons[i].click();}if(spans[j].innerText.includes("已完成学习")){window.close();}}}}}}setInterval(coursePage, 1000);function play(){var patt = /^https:\/\/player.qlteacher.com\/learning\/[^=]*/;if(document.URL.match(patt) == document.URL){// 纯测试题的课程if(document.getElementsByClassName("segmented-text-ellipsis mr-16").length > 0 &&document.getElementsByClassName("segmented-text-ellipsis mr-16")[0].innerText == "测试题"){// 拿到所有题目,并为每个题选择第一个选项(这里的题目不要求全部做对才算完成)var tests = document.getElementsByClassName("mb-16 ng-star-inserted");for(var t=0; t<tests.length; t++){tests[t].querySelectorAll("label")[0].click();}// 提交答案var buttons = document.querySelectorAll("button");for(var k=0; k<buttons.length; k++){if(buttons[k].getElementsByClassName("ng-star-inserted").length > 0 &&buttons[k].getElementsByClassName("ng-star-inserted")[0].innerText == "提交"){buttons[k].click();break;}}// 确定提交buttons = document.querySelectorAll("button");for(k=0; k<buttons.length; k++){if(buttons[k].getElementsByClassName("ng-star-inserted").length > 0 &&buttons[k].getElementsByClassName("ng-star-inserted")[0].innerText == "确定"){buttons[k].click();break;}}// 如果状态为已完成,则关闭窗口if(document.getElementsByClassName('count-down ng-star-inserted')[0].innerText=="已完成"){window.close();}}// 弹出的多选题窗口,每次随机选择else if(document.getElementsByClassName("ant-checkbox").length > 0){document.getElementsByTagName('video')[0].paused==true;var items1 = document.getElementsByClassName("ant-checkbox");var cnt = 0;for(var i=0; i<items1.length; i++){var randomZeroOrOne = Math.floor(Math.random() * 2 + 0.5);if(randomZeroOrOne == 1) {cnt++;items1[i].click();}}if(cnt > 0){document.getElementsByClassName("ant-btn radius-4 px-lg py0 ant-btn-primary")[0].click();}}// 弹出的单选题窗口,每次随机选择一个选项else if(document.getElementsByClassName("ant-radio-input").length > 0){document.getElementsByTagName('video')[0].paused==true;var options = document.getElementsByClassName("ant-radio-input");var randomIndex = Math.floor(Math.random() * options.length);options[randomIndex].click();document.getElementsByClassName("ant-btn radius-4 px-lg py0 ant-btn-primary")[0].click();}// 播放视频else if(document.getElementsByTagName('video').length > 0 &&document.getElementsByTagName('video')[0].paused==true){document.getElementsByTagName('video')[0].muted = true;document.getElementsByTagName('video')[0].play();//document.querySelector('video').playbackRate = 16;//设置播放速度}// 如果完成,则退出if(document.getElementsByClassName('count-down ng-star-inserted')[0].innerText=="已完成"){window.close();}}}setInterval(play, 1000)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/790165.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go plan9 汇编: 打通应用到底层的任督二脉

原创文章,欢迎转载,转载请注明出处,谢谢。0. 前言 作为一个严肃的 Gopher,了解汇编是必须的。本汇编系列文章会围绕基本的 Go 程序介绍汇编的基础知识。 1. Go 程序到汇编 首先看一个简单到令人发指的示例: package mainfunc main() {a := 1print(a) }运行程序,输出: # …

20221414徐鹿鸣Markdown学习作业

问题一:哪些内容是你掌握的?哪些内容是你没有掌握的?使用AI推荐的工具或者你喜欢的工具实践一下没有掌握的内容。通义千问的回复 对我而言,Markdown的基础语法我接触过一二,但余下的高级语法、各种工具以及它与人工智能生成的内容的关联我并不清楚。 StackEdit在线Markdow…

Qt svg 图标图片不显示

因为少了Qt5Svg.dll库和imageformats文件夹的依赖,可以对对应Qt安装目录下的32位或者64位库文件夹中去找到。 自己开发了一个股票智能分析软件,功能很强大,需要的关注微信公众号:QStockView

深度学习(初始化)

深度学习训练的时候,一个好的初始化结果能使模型更容易收敛,Pytorch提供了一些初始化函数。import torch import torch.nn as nn import matplotlib.pyplot as pltclass Model(nn.Module):def __init__(self):super(Model, self).__init__()self.a = nn.Parameter(torch.zero…

电流峰值采样电路分析

一、前言在一些电路控制中,采集电路中某部分的峰值电流做处理是非常有必要的,所谓的电流采样,本质上还是电压采样。接下来将介绍一种电流峰值采样电路。 二.基本原理最基本的原理是利用电容的充放电特性,基本电路如下图所示,当电源电压上升时,二极管导通给电容充电。电源…

自我介绍和软工五问

| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/ | | ----------------- |--------------- | | 这个作业要求在哪里| https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13228 | | 这个作业的目标 | <学习使用github,思考自己对课程…

信息学奥赛初赛天天练-80-NOIP2015普及组-基础题5-错位排列、二叉树、完全二叉树、叶子节点、完全二叉树叶子节点

NOIP 2015 普及组 基础题5 21 重新排列 1234使得每一个数字都不在原来的位置上,一共有( )种排法 22 一棵结点数为 2015的二叉树最多有( )个叶子结点 2 相关知识点 1) 错位排列 考虑一个有n个元素的排列,若一个排列中所有的元素都不在自己原来的位置上,那么这样…

2024 NepCTF

NepCTF NepMagic —— CheckIn 直接玩游戏就能出 注意有一关要把隐藏的方块全找到 NepCamera 先使用tshark读取数据结果文件中发现大量jpeg头ffd8ffe0。猜测是多个图片,编写脚本,提取出来。 脚本: import reinputFilePath="C:\\Downloads\\NepCamera\\result.txt"w…

JAVA基础之三-接口和抽象类

java提供了抽象类和接口,总体是好事。 有的OOP语言并没有接口的概念,但相当一部分其实用其它方式实现了JAVA中接口类似的功能。 如果不太清楚二者的区别,难免在面临具体业务的时候,在二者之间摇摆。 --- 实际上,关于抽象类和接口的共同点和不同点没有什么可以写的。 设计原…

iMac安装Windows系统键盘无反应

热烈欢迎,请直接点击!!! 进入博主App Store主页,下载使用各个作品!!! 注:博主将坚持每月上线一个新app!! 1、鼠标右击任务栏空白处,选择“任务管理器”: 2、在进程里边找到“Microsoft IME”,右键点击它,选择“结束任务”

spark的SparkSubmit类关于Configuration的资源文件加载

在阅读 SparkSubmit 源代码时,重点关注 Configuration 的资源文件的加载情况,默认通过 new Configuration() 构造方法创建时,只会加载 core-default.xml 和core-site.xml文件,但是 SparkSubmit 中打印 Configuration 时,发现还会加载 yarn-site.xml,SparkSubmit 代码中没…

uni-app实录

虽然小程序已经火了好几年,但是现在还是经久不衰,虽然已经有很多出色的制作者和供应商,但作为一门技术手艺,秉持着“技多不压身”的原则,这里再次进行填坑。本文来自博客园,作者:ukyo--君君小时候,转载请注明原文链接:https://www.cnblogs.com/ukzq/p/18390418