自動的にアンケートスターに記入JavaScript--

I.はじめに:

  学術章を磨くために私たちの学校は、いくつかの学術章はいくつかのポイントアンケート登録時のアンケートの星を埋めるために指定されています。私の手の速度が遅いのためしかし、いくつかのケースでは結果は常に名を報告し、その思考が自動的に登録フォームのアンケートに記入スターコードを前方に配置しないでください。食事の作業の後、私たちは、githubの上でより適切なソースを発見したアンケートスターに記入自動的に達成することができますいくつかのコードを修正しました!参考住所:https://github.com/wkmyws/wjxJS

  ブロガー環境:64 + Googleのブラウザをwin10

   ブラウザのJavaScriptコードの実行を実現するために、2つの方法があります。

  、アンケートのスターページでコンソールを開き、事前コンソールで書かれたJavaScriptコードを貼り付け、および実行するためにEnterキーを押すために①直接F12!しかし、この方法は、あまり望ましく遅いです(あなたがアンケートスターフィールドいっぱいの電源をオンにするたびに、それから......それから、コンソールをオンに移動し、貼り付けるために、多くの時間を持っていましたおそらく他の人が完成O(╥﹏╥)Oを提出しています)

  ②GoogleのChromeで油侯スクリプト挿入は、ブラウザが自動的にjsのスクリプトを実行することができます。このメソッドは、次の試験方法を用いて、高速で、安定した効果です!

第二に、テスト構成+

1. Googleのブラウザプラグインオイル侯スクリプト

1.1オイル侯スクリプトは、無料のブラウザ拡張機能であり、最も人気のあるユーザースクリプトマネージャは、ブラウジング体験を超えるユーザーコントロールを強化します。オイル侯スクリプトダウンロード:http://www.tampermonkey.net/

1.2インストールプロセス:

  ①右上に縦3のブラウザChromeを開くために - >その他のツール - >拡張機能

  ②拡張ページでは、開発者モードをオンにします

  ③ロードアンパック拡張をクリックし、ダウンロード後のファイルを選択し、フォルダを解凍します

  

    注:ダウンロードした後、Googleのブラウザのデフォルトの拡張子の位置を入れていない最高のオイル侯スクリプトを解凍し、そうでない場合は油侯スクリプトがブラウザをクリアすることができる再起動してください!カスタムの場所での推奨オイル侯スクリプトファイル!

  ④インストールが完了したら、Googleがブラウザ油侯スクリプトアイコンの右上隅に表示されます

  

   

問題は、1.3に遭遇しました

Googleのブラウザプラグインオイル侯スクリプトの後、繰り返し表示されることがあり、ブラウザは次のように述べています:

解决办法:Chrome75及以上版本就不能彻底禁用了,参考这个 https://www.52pojie.cn/thread-988783-1-1.html 网址后,找到了解决办法。经测试,谷歌浏览器77版本也可以成功禁用这个弹窗!

简单说就是将下载的version.dll插件直接放在Chrome.exe同目录下即可解决问题!

version.dll下载链接:https://pan.baidu.com/s/1m-1NRK9lws599sBHp4iDIg
提取码:mc7x 

2. 测试

2.1 自动填写问卷星

1.测试代码如下:(支持问卷星的input、radio、checkbox,仅支持填写)

// ==UserScript==
// @name         问卷星测试——支持input radio checkbox
// @version      1.1
// @description  测试
// @author       蛋片鸡
// @match        https://www.wjx.top/*
// @match        https://www.wjx.cn/*
// @grant        none
// @require      https://code.jquery.com/jquery-3.4.1.min.js
// ==/UserScript==


/*
**info 第一个参数:对应的填入选项(字符串)
**info 第二个参数:匹配的标题(正则表达式)
**info 第三个参数:(可选),当答题框为单选|多选时匹配的选项(正则表达式)
*/

(function() {
    'use strict';
    const info=[
        ["蛋片鸡",/(姓名)|(名字)/],
        ["18711111",/(学号)/],
        ["单选框_性别",/(性别)/,/(男)|(男生)/],
        ["单选框_年级",/(年级)/,/(18级)|(2018级)/],
        ["机自学院",/(学院)/],
        ["计算机",/(专业)/],
        ["11011001100",/(联系方式)|(电话)|(手机)|(手机号)/],
        ["[email protected]",/(QQ)|(qq)/]
    ];
    const ini={
        module:".div_question",//每个问题模块
        title:".div_title_question",//标题
        type:{
           "input_text":".inputtext",
           "radio":".ulradiocheck",
           "checkbox":".ulradiocheck"
        }
    };
    $(document).ready(function(){
        let itemNum = 0;
        $(ini.module).each(function(){
            itemNum += 1;
            let title=$(this).find(ini.title).text();
            //判断类别
            for(let i=0;i<info.length;i++){//匹配用户信息
                if(info[i][1].test(title)){//匹配到一处信息,判断答题框类型,加break!
                   for(let tp in ini.type){
                       let dom=$(this).find(ini.type[tp]);
                       if(dom.length>0){
                           switch(tp){
                               case "input_text":
                                   $("#q"+itemNum)[0].value = info[i][0]; //赋值
                                   break;
                               case "radio":
                               case "checkbox":
                                   $(this).find("li").each(function(){
                                       if(info[i].length>=3&&info[i][2].test($(this).text())){
                                           $(this).find("a").click();
                                       }
                                   });
                                   break;
                               default:console.log("ini.type中没有匹配"+tp+"的键值");
                           }
                           break;
                       }
                   }
                    break;
                }
            }
        });
    });
})();

2.测试结果:

测试使用的问卷星链接:https://www.wjx.top/jq/46606239.aspx

2.2 自动填写并提交问卷星

1.测试代码如下:(支持填写并提交功能)

// ==UserScript==
// @name         问卷星测试——支持input radio checkbox
// @version      1.1
// @description  测试
// @author       FHC
// @match        https://www.wjx.top/*
// @match        https://www.wjx.cn/*
// @grant        none
// @require      https://code.jquery.com/jquery-3.4.1.min.js
// ==/UserScript==


/*
**info 第一个参数:对应的填入选项(字符串)
**info 第二个参数:匹配的标题(正则表达式)
**info 第三个参数:(可选),当答题框为单选|多选时匹配的选项(正则表达式)
*/

(function() {
    'use strict';
    const info=[
        ["蛋片鸡",/(姓名)|(名字)/],
        ["18711111",/(学号)/],
        ["单选框_性别",/(性别)/,/(男)|(男生)/],
        ["单选框_年级",/(年级)/,/(18级)|(2018级)/],
        ["机自学院",/(学院)/],
        ["计算机",/(专业)/],
        ["11011001100",/(联系方式)|(电话)|(手机)|(手机号)/],
        ["[email protected]",/(QQ)|(qq)/]
    ];
    const ini={
        module:".div_question",//每个问题模块
        title:".div_title_question",//标题
        type:{
           "input_text":".inputtext",
           "radio":".ulradiocheck",
           "checkbox":".ulradiocheck"
        }
    };
    $(document).ready(function(){
        let itemNum = 0;
        $(ini.module).each(function(){
            itemNum += 1;
            let title=$(this).find(ini.title).text();
            //判断类别
            for(let i=0;i<info.length;i++){//匹配用户信息
                if(info[i][1].test(title)){//匹配到一处信息,判断答题框类型,加break!
                   for(let tp in ini.type){
                       let dom=$(this).find(ini.type[tp]);
                       if(dom.length>0){
                           switch(tp){
                               case "input_text":
                                   $("#q"+itemNum)[0].value = info[i][0]; //赋值
                                   break;
                               case "radio":
                               case "checkbox":
                                   $(this).find("li").each(function(){
                                       if(info[i].length>=3&&info[i][2].test($(this).text())){
                                           $(this).find("a").click();
                                       }
                                   });
                                   break;
                               default:console.log("ini.type中没有匹配"+tp+"的键值");
                           }
                           break;
                       }
                   }
                    break;
                }
            }
        });
        $('.submitbutton').click();
    });
})();

 

 其实上面就是增加了一行代码就可以进行问卷提交!

2.测试结果:

测试使用的问卷星链接:https://www.wjx.top/jq/46606239.aspx

 

 

 

おすすめ

転載: www.cnblogs.com/FHC1994/p/11721723.html