关于如何正确地酷学院刷练习题

发布时间 2023-09-23 22:24:21作者: isYuAh

首先要说明:

  1. 只适合练习题,不适合单元测试(但是感觉原理也差不多,如果你能破解切屏)
  2. 刷题虽好,可不要贪杯哦

背景

今天可是截止的最后一天了,我还没刷完题,肿么办。100%进度可是对应着10分,我必拿,pdf和视频可以先刷了,然后后来补,但是这题目做起来很费时间啊。

然后我发现了一个神奇的现象,我之前网络不好的时候,点了选项之后仍是可以判断对错的,只不过是无法上传对错数据而已,所以我认为一定是提前请求到了所有题目的答案,所以我只需要..

数据分析

先看看吧,这个网页大概率是json(大部分网页基本都是json存数据),肯定是向后端请求的,so查一下网络。然后发现有个神奇的请求,
api/v2/xxxx/users/xxxx/practices/xxxx/query_question?type=fixed&continue=true
这请求的返回确实是json,而且名字都叫query_question了,一看就是,有好几个请求,其中只有一个是正常的。
赶紧看一手,有个question字段,里边是数组,点开看看,果然有correct_answer,所以说这不就好起来了么。

写代码

那么既然是处理json数据,就用javascript呗,但是直接在浏览器开个标签页用网页的js太麻烦了,so我选择了nodeJS ,一个使用javascript作为编程语言的东西。
而且只是自己用用的话,只需要写一个简单分析的即可,不用非得爬出来所有的接口流程,json数据可以人工获取,也不是很难。

var data = ""
var j = JSON.parse(data)
for (var i in j.questions) {
    console.log(j.questions[i].correct_answer)
}

没错确实很简单,只需要把正确的json数据填入data就行

一些小问题

还有个问题就是,获取到的json格式含有非常多的",而这样会影响我们变量的赋值,so网上有许多的json转义压缩的网页,随便找一个,输入,压缩&转义,复制,粘贴,完工。

最后就是爽了,输入node .\xxx.js之后会出现如下输出:

[ 'option2' ]
[ 'option1' ]
[ 'option4' ]
[ 'option3' ]
[ 'option4' ]
[ 'option2' ]
[ 'option4' ]
[ 'option1' ]
[ 'option2' ]
[ 'option2' ]

option1 - A
option2 - B
以此类推