因为参加了远智的学历提升计划,要参加期末考试,我选的这个专业每次还要考十六个科目😢,因为专业不相关,所以也没计划去深入学习。又因为考试时不能打开他们手机端的APP题库,所以很多人都得先在手机上一个题目一个题目的截图,如果是我,得截16科*每科30道题≈480张图,然后还没法搜索…本着节省时间的宗旨,不得出此下策,另外为了方便其他有这方面需求的同学,特别发出这篇blog~
目的
通过APP抓包远智题库,将题库以json文件储存,然后通过JS脚本点击自动选择提选项来实现自动答题。
抓包
电脑端下载并激活Charles抓包工具
- 点击下载安装包
- 打开Charle - Help - Register Charles,任意输入字符(如
Victor
); - 点击进入生成激活密钥的网址;
- 在网页中输入刚才的字符,点击生成即会生成密钥(如
1ea1b0ced9c48f26b2
),复制到Charles粘贴进去确认即可; - 在左下角的
Fliter
输入远智题图API的URLhttps://onlineexam.yzou.cn
;
IOS端配置代理与HTTPS证书
-
在控制台中输入
ipconfig
查询当前电脑IP,将ip地址以及端口8888
在手机上配置为代理:Settings - WLAN - Wifi详情 - Configure Proxy; -
在手机上访问
chls.pro/ssl
,进入页面会立刻提示此网站尝试下载证书,点击允许即可。如果没有弹出提示下载证书,尝试关闭手机及PC端的代理、如小飞机、Clash、SS等; -
下载成功后打开IOS Setting应用,第一项菜单应该就是
Profile Downloaded
,进去后点击Install
然后输入锁屏密码; -
IOS 10.3系统及以上,需要在 Settings - General - About - Certificate Trust Settings里面找到
Charles Proxy CA({当前日期}, {电脑名称})
,打开信任开关即可; -
Charles设置Proxy,Proxy -> SSL Proxying Settings…,接着弹框里勾选Enable SSL Proxying,点击
Include
列表下的Add
,host填onlineexam.yzou.cn
,Port填443
,点击OK即可;
至此在远智APP访问考试相关的HTTPS请求就可以在Charles
中看到了
手机端打开试卷
这里非常简单,在远智APP - 学堂 - 智能练题 - 选中要考试的科目 - 整卷练习 - 背题模式,点击查看进去
Charles查看试卷答案
进入试卷界面后在Charles查找getFullPaperInfo.do
请求即可。如下图可以看到其中一个单选题的题目、选项及答案:
JSON内容应该是这样:
1 | { |
题库准备完成后就可以根据题库的Json文件生成JS脚本然后在浏览器中执行来达到自动选择答案的目的啦😎
生成脚本
老办法,将上面抓到JSON粘贴到输入框,点击升级就会生成JS脚本,然后点击复制,去远智在线的考试界面,按F12打开控制台将脚本粘贴进去回车就好~
1. 将JSON内容粘到输入框
突破考试时间至少要5分钟的限制
其实我本来觉得这个限制应该没法突破的,因为在后台稍微判断一下就可以做到,意想不到的是这个判断逻辑竟然坐在前端😢是我想多了(当然,也可能是同行心存善意🤣🤣)
既如此,打开控制台,在source
下的webpack://
找到newOnlineExam.vue
,在大概1300
行处打个断点,页面里点击"交卷"时会命中此断点,然后将rspTime
改大一点即可(我是把第一位的1改成2就好了)。
注意事项
由于很多简答题没有答案,并且问题的顺序也不一致,所以对于简答题就需要自行谷歌,或者使用ChatGPT(吹爆!!!)来生成答案😉
郑重声明:使用时请自行核对答案,考0分我可不管啊