一个基于chrome扩展的自动答题器此方宅

基于这篇入门教程和demo,我才能写出这款

基于chrome扩展的自动答题器。

2、开发背景

去年12月,某省委组织部举办了一系列学习竞赛活动,第一期时,参加人数寥寥,在第二期时,便通过党组织渠道要求所有党员保质保量的参加。

该活动可在专门的app上参加,也可通过官方网站参加。

既然是基于网页的并且支持chrome内核的考试系统,那自然能从前端入手进行操作。

3、主要功能迭代

2月21日,发布第一版答题器,主要功能有

3月4日,增加了了添加自定义试题及答案的功能。

3月20日,增加了全自动答题功能。

4月20日,增加了伪造回传鼠标点击坐标的功能。

5月14日,增加了在线更新的功能

至此,答题器的功能已基本成熟,最终答题器的界面如下:

4、结构拆解与代码分析

整个程序的存储由content部分来处理,存放于chrome.storage.local中,popup和inject在需要时从content更新数据,同时如果用户修改了设置也及时反映给content进行保存。

popup的js代码如下:(我觉得我备注的还可以)

content.js的代码:

在content和inject通讯中,我选择了在页面新建一个div元素,然后将通讯内容作为div元素的html。

优势是逻辑简单,可以直接使用jquery处理;

缺点是,破坏了页面原有结构,inject需要不停轮询该元素内容,通讯内容暴露,单项通讯

inject.js代码:

window.anslist为提前写入到程序中的基础题库,减少在线更新时数据通讯量;

因为只能从content接收指令,所以在inject中也保存了一份用户设置;

其中的ans_plus()函数则是整个答题器的核心,也是我最开始写的脚本部分。

逻辑很简单,

1遍历所有题目标签2{3找到题干;4在题库中匹配题干;5如果未匹配到6{7就用alert弹出提示8错题标记+19}10如果匹配到11{12获取所有选项并进行遍历13{14如果是单选并且选项等于该题目的答案15{16选中该选项;17continu;18}19如果是多选并且选项在该题目的答案中20{21选中该选项;22}23}24}25}26如果没有错误标记则自动交卷;以上,就是整个答题器中最重要的popup,content和inject中的js代码。

5、几个功能迭代。

从4月份期,为增加作弊难度,考试系统在每天都会增加几道新题。根据观察,是20道题中,在基础题库中抽取18道,在当日新题中抽取2道。

当时的对策是每天更新一次答题器,为了便于答题,答题器的所有用户每天都需要重新下载更新答题器。(群成员数暴涨)

5月13日,我重写了自定义新题的功能,可以批量添加多个新题。这样每天我只需要更新新题字符串,答题器用户将新题字符串导入答题器即可。

5月14日,在重新学了了小茗同学教程之后,实现了在线更新的功能。自定义新题字符串仅仅使用了两天便被淘汰。

服务器端代码:

1$_v)19//echo'{"date_varsion":"'.$_v.'","update":"'.$date.'"}';20{21echo'//'.$_v;22echo$date;2324}25>服务器端代码很简单,答题器将当前版本号发送至服务器,如果版本号一致则服务器返回空白页,如果不一致则返回新题数据。

数据的第一行是当前数据版本,后面则是题目/答案。依托于重写的自定义新题功能,自动更新非常顺利的实现了。

4月20日,经确认,考试系统加入了防作弊功能,原理是当鼠标点击“上一题”“下一题”或者题号时执行函数ClickButton,保存当前鼠标坐标,在交卷时同时传给服务器。

一开始我考虑的伪造回传数据,但数据经过了一点简单的计算,实在懒得跟他算计,

然后考虑的伪造下一题按钮的点击事件,但通过脚本触发的点击事件没有鼠标坐标信息,

最后忽然发现,我只要每次题目切换时,伪造一个事件(Event)作为参数传给反作弊的模块即可

varposx=Math.floor(800+Math.random()*200);

varposy=Math.floor(400+Math.random()*140);

ClickButton({'button':0,'clientX':Math.floor(posx+Math.random()*50),'clientY':Math.floor(posy+Math.random()*15)});6、写在最后

这个答题器功能实用,逻辑清晰,难度不算大,非常适合chrome扩展的学习和练手。

THE END
1.扫一扫答题神器app大全扫一扫答题神器免费下载目前软件功能非常强大,设计出直接扫描就可以识别搜索题目答案的功能,增强用户学习的效率,并且完全可以免费使用,可以缓解很多用户作业的压力,今天小编给大家整理了多种类型的扫一扫答题神器,让用户快速答题,提高自己的作业完成率,感受更高效解题的体验,能帮助用户更快速的完成学习,对于做题方面有需求的用户可以下载体验一下http://www.downcc.com/k/sysdtsq/
2.答题神器app合集答题神器一扫就出答案的软件学小易 v2.2.1 等级: 9.1 2023-11-10 52.5MB 简体中文 下载 推荐理由: 学小易是一款非常好用的搜题软件,还有丰富课程可以进行学习,海量题库可以提高自己的学习能力,专业名师为学生进行一对一辅导,遇到难题可以轻松查看解析过程,需要的用户们赶快来下载使用吧。 题拍拍 v2.8.4 等级: 7.6 2023-11-03 191.1MBhttps://www.sooker.com/zt/dtsqysjcdarjtj/
3.答题软件排行榜前十名十大相关软件专辑 手机答题软件哪个好?几款靠谱的答题app推荐电大作业答案搜题软件数学题解答软件专升本搜题答案软件扫一扫答题软件免费答题软件大学课后题答案软件扫题解答软件大学英语搜题答案软件搜题库答案软件学生做题答案软件公务员搜题解答软件在线答题软件数学题目解答软件数学题目解答扫一扫apphttps://m.pianwan.com/s/zj-8252075
4.考试宝导入好后,可进行在线刷题、 组织考试、搜索答案等 批量上传试题 多种练习方式 练习方式多样,支持背题模式、选项随机、试题随机、 模拟考试、章节练习、错题练习和收藏题练习等 自由编辑试卷,发布在线考试 随机组卷或手工选题,组好试卷后发布考试;考生 通过网页或小程序进行考试,程序自动判分 https://www.kaoshibao.com/down_app.html
5.环球快题库app下载更多环球网校快题库安卓历史版本(10个)相关合辑 监理工程师刷题软件监理工程师题库app监理刷题库app网约车考试题库app网约车资格证考试题库app小学试卷题库软件二建考试题库app免费二建题库软件消防题库app成考题库软件高中题库软件大学生题库软件高考必刷题库软件初中题库软件经济师题库app驾照网上答题加分app税务https://m.liqucn.com/rj/827641.wml
6.扫一扫答题软件有哪些2024扫一扫答题软件推荐扫一扫答题软件有哪些?可以通过简单的拍照就可以找到做题的过程,而且通过视频讲解的方式为你提供思路,让你可以更好的学习,能够为你的学习带来帮助,而且做题app都收录的是全网最全的题库,可以让你轻松找题,更好的查询到自己想要的题目,感兴趣的用户不要错过啦。http://m.doyo.cn/zhuanti/sysztrj/
7.扫一扫答题软件免费下载作业扫一扫秒出答案app下载马上要放假了,在开心的同时意味着有很多同学又要面临作业堆积成山的压力了,为此小编特意给大家带来了扫一扫答题app,在这里拥有各种各样极为受欢迎又好用的扫一扫答题神器,不仅一扫就出答案,而且还可以免费下载不收费。其中夸克搜题、作业精灵以及作业帮在搜题找答案这方面有着巨大的优势,因为它们都具有解析全、答案全https://www.ddooo.com/zt/dtapp.htm
8.刷题神器app刷题神器下载刷题神器app是专门为准备考试的同学开发的软件,在软件中包含大量的试题,同学们可以搜提、答题,通过软件复习考试的资料。刷题神器app适合小初高,以及各种职业职称考试,超过百万份考试题库资源可以免费查看,是课后的学习好帮手,可以帮助同学们提升考试通过的成功率。本专题提供刷题神器app,包括刷题神器下载。 详情https://www.guguzhu.com/zt/stsq/
9.python用题库自动答题器用题库自动答题python 用题库自动答题器_用题库自动答题 Ⅰ 有没有可以自己编题然后自己答题的手机软件 刷题神器呀,这个可自己上传题库,还可以进行试题买卖 Ⅱ 求一款网页答题软件,自己有题库。 200时间 1000时间?这都什么时间单位啊。 一共多少道题?题库多少道题?https://blog.csdn.net/weixin_42356137/article/details/114400813
10.诛仙手游文曲星试炼题库出炉,官网自动答题器解锁最全答案在诛仙手游中,文曲星试炼题库有很多,其中包括张小凡、青云等众多职业的题目,当玩家参与文曲试炼可以获得绑定元宝、专属称号、炼器符、宋时笙碎片、限时专属配饰等,如果玩家想在有限的时间内获得更多分数、更好的成绩,同时解锁文曲试炼中最全的答案,那么诛仙的自动答题器绝对是玩家的不二选择。 https://guide.qywcom.com/3621ff68b50ad0a48d87.html
11.175dt梦幻西游答题器网页版梦幻题库 网页版梦幻西游答题器,提供多种搜索方式,无需下载就能直接使用! 【拼音搜索】 输入关键字的拼音或首字母,即可自动找到包含关键词的题目。 【截图搜索】 方法1:使用微信、QQ等软件截图,在搜索框粘贴即可自动搜索相应的题目。 方法2:在游戏内按下键盘PrintScreen键(在F12右侧,不同键盘可能会有所不同),即https://www.175dt.com/
12.问道手游文曲星答题器文曲星题库问题答案大全问道手游文曲星答题器 文曲星题库问题答案大全2016-06-01 4399挽歌 0 举报 文曲星答题是问道手游中一个奖励十分丰富的答题活动,题目涵盖天文地理、文学常识及科学定义等,因为题目本身也有在不断更新,下面4399挽歌就为大家带来大致的题目汇总,希望对各位玩家有所帮助。https://m.news.4399.com/wendao/xinde/m/637692.html
13.手机自动答题软件免费APP推荐手机自动答题软件免费下载豌豆荚手机自动答题软件免费榜单为您提供最新手机自动答题软件免费大全,这里不仅有手机自动答题软件免费安卓版本APP、历史版本应用下载资源,还有类似手机自动答题软件免费的应用推荐,欢迎大家前来豌豆荚下载。https://www.wandoujia.com/bangdan/406388/
14.梦幻西游手游药术考核题库和答案药术进阶考核答题器梦幻西游手游药术考核答案是什么呢?一升二级的考核答案之前小编已经给大家分享过了,不过后面还有新的考核题目,而且等级越高考核难度越大,下面小编就给大家分享一下最新的药术考核题库和答案,希望玩家会满意。 梦幻西游手游药术考核答题器 1.中医四大名著不包括?本草纲目 https://a.9game.cn/news/2129488.html
15.键盘答题器(自动秒题版)键盘答题器(自动秒题版)_屏幕取题对比题库自动答题,有题库自动答题脚本IC**ld 上传1.24 MB 文件格式 cab 屏幕取题对比题库自动答题 有题库自动答题脚本 简单的键盘答题器(答题助手)带自动秒题功能 需要的朋友来下吧 点赞(0) 踩踩(0) 反馈 所需:13 积分 电信网络下载 https://www.coder100.com/index/index/content/id/1085857
16.易语言简易答题器源码题库导入本地数据库易源码转载分享 虚拟商城 更多 幸运抽奖 排行榜单 签到中心 社区监狱 直播中心 易源码关注关注:73内容:2246 查看作者 打赏作者 当前位置:七七博客>易源码>正文 6 发帖狂魔 VIP2 把Excel表格导入本地数据库,对数据库内容进行搜索 Excel表格A列为题目,B列为答案导入即可 https://www.qiqiboke.com/12865.html
17.天龙八部自动答题器首页教程和下载天龙八部的自动答天龙八部自动答题器是专为同名游戏制作的一款辅助工具,功能强大,题库丰富,支持自动答题,答题越快越多,玩家奖励就越丰厚。 天龙八部自动答题器简介 天龙八部自动答题器是游戏《天龙八部》的一款自动答题软件,使用免费,支持唯美版和经典版2个版本的答题,启动快捷键是F1、暂停快捷键F2、终止快捷键F3。 https://www.wmzhe.com/software/53560.html
18.七雄争霸自动答题器下载1、只要输入一个汉字或者2个字符,答题器将自动开启自动智能匹配功能,输入越多,搜索结果将越精确2、可输入多个关键字(词)进行精确搜索,不同的关键字(词)之间需用空格隔开;3、复制题目到搜索窗口查询时,不要复制题目序号。4、题库因收集时间有限,题库还没 http://www.962.net/patch/9315.html