在此之前,在他人的博客中看到一篇文章,但是写得不是很详细,下面我来详细的说明一下.

原理

首先进入自己学校的平台.打开开发者工具--network,然后登陆
image-20181107200010320
image-20181107200045194
可以看到headers和data.并且data中的tbName和tbPwd都没有加密.这是之后我们需要post的 包括上面两个_

答案从哪来

如果你此前做过测试并且获得过60分以上的成绩,就可以查看那个习题答案.
我们打开开发者工具-- network.然后查看答案.
我们发现
image-20181107200606504
答案是通过viewTestTask.apsx获取的.其中data中三个数字就代表返回给viewTestTask.aspx来获取测试的答案.
那么我们就需要 获取这三个数字.

如何获取三个关键数字

首先我们需要进入本周测试的网页.
然后打开开发者工具--network
image-20181120215727161

抓取

通过viewTestTask.aspx传入header和data进行抓取.
由于先人的代码会造成
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 32-37: ordinal not in range(256)错误,我进行了二次修正.仅供参考.适合版本新理念英语v6.2
需要修改的地方已经标注. python版本3.7

实现全自动答题

准备

你需要安装Python3以上版本,并且正确安装Requests库,selenium库,Chrome以及对应的WebDriver。
除此之外你不需要做任何事。

开始

1git clone https://github.com/Innei/Auto-AnswerXinLinian.git
2cd Auto-AnswerXinLinian
3python3 ./main.py
Copy

亲亲留个评论再走呗

正在加载评论区...