超星/学习通自动抢答

超星/学习通自动抢答!

Tendrás que instalar una extensión para tu navegador como Tampermonkey, Greasemonkey o Violentmonkey si quieres utilizar este script.

You will need to install an extension such as Tampermonkey to install this script.

Necesitarás instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Userscripts para instalar este script.

Necesitará instalar una extensión como Tampermonkey para instalar este script.

Necesitarás instalar una extensión para administrar scripts de usuario si quieres instalar este script.

(Ya tengo un administrador de scripts de usuario, déjame instalarlo)

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

(Ya tengo un administrador de estilos de usuario, déjame instalarlo)

// ==UserScript==
// @name         超星/学习通自动抢答
// @namespace    Anubis Ja
// @version      0.2
// @description  超星/学习通自动抢答!
// @author       Anubis Ja
// @match        *://mobilelearn.chaoxing.com/widget/pcpick/stu/index?*
// @supportURL   https://greasyfork.org/zh-CN/scripts/398151/feedback
// ==/UserScript==

(function() {
    var name = '系统繁忙'; //在此填写你的真实姓名,会在抢答页面显示!
    var time = 1; //监控频率/秒 请勿低于1,否则你的账号将会被超星屏蔽!
    var autoStop = 1; //抢答成功自动暂停。设置为0即可无限检测抢答。

    //以下内容除非你懂javascript,否则请勿修改!
    function getQueryVariable(variable) {
        var query = window.location.search.substring(1);
        var vars = query.split("&");
        for (var i = 0; i < vars.length; i++) {
            var pair = vars[i].split("=");
            if (pair[0] == variable) {
                return pair[1];
            }
        }
        return (false);
    }
    var courseId = getQueryVariable("courseId");
    var jclassId = getQueryVariable("jclassId");
    var t = 0;
    console.log('监控课程id:' + courseId + ' 班级id:' + jclassId + ' 抢答人姓名:' + name);
    var interval = setInterval(function() {
        t++;
        console.log('监控抢答第 ' + t + ' 次');
        $.ajaxSettings.async = false;
        $.getJSON('/ppt/activeAPI/taskactivelist?courseId=' + courseId + '&classId=' + jclassId, function(json) {
            //console.log(json.activeList)
            for (var i = json.activeList.length - 1; i >= 0; i--) {
                if (json.activeList[i]['activeType'] == 4 && json.activeList[i]['status'] == 1) {
                    $.getJSON('/pptAnswer/stuAnswer?answerId=' + json.activeList[i]['id'] + '&classId=' + jclassId + '&role=&courseId=' + courseId + '&general=&appType=15&stuMiddlePage=1&stuName=' + name);
                    //console.log(json.activeList[i]);
                    if (autoStop == 1) {
                        console.log('抢答成功!监控抢答已结束,如需继续监控请刷新页面。');
                        alert('抢答成功!监控抢答已结束,如需继续监控请刷新页面。');
                        clearInterval(interval);
                    }
                }
            }
        })
    }, time * 1000);
})();