解析教务系统查看平时成绩(方正教务系统)

好啦,身患懒癌的我终于迎来了更新。

干货,很干很干的货。期末考试完了很多小伙伴都在等成绩的出来,成绩出来又只有一个最终成绩,所以才有了这次的更新,教大家如何查看自己的平时成绩和卷面成绩!!!(P.S:因为有学长好像写过类似文章,大致方法差不多,如有雷同纯属巧合)好吧,废话不多说,开始啦!

准备工具:Chrome浏览器、方正教务系统账号(也就是你们的学号)

Let's do it!

首先打开学校的教务系统(由于没有其他学校的权限,也就暂时先用我的学校做测试,有兴趣的小伙伴如果也是方正教务也可以去尝试,欢迎反馈)

登陆后,我们打开信息查询-成绩查询,然后按F12进入开发调试工具,然后选择Network选项,刷新浏览器,会发现浏览器向网站发送和接受包,抓取信息也就是所谓的“抓包”(可能有误)。

选择学年以及学期点击“学期成绩”,浏览器开始工作。等待浏览器请求完毕后,我们在Name这一栏里找到类似下图结构的json文件,里面保存的就是成绩的数据,找到类似的名称说明已经成功了一半,这个结构一般包含了自己的学号。

接着我们在Headers下的Form Data里找到如下内容,类似乱码的一堆数据,这段数据是进行过加密的内容,复制这段数据所有的内容,接下来我们去进行解码,经过尝试,发现采用的是Base64加密方式。

网上有很多在线解码的网站,我用的是站长工具,将数据复制粘贴进去后即可解码,如下:

我们在左侧的解码结果可以看到,里面相对于我们来说还是有无用的数据,我们拖动到需要查看的科目前,以马原为例,我们可以看到的信息有课程名称、代码、是否选修、学分等,这些相对我们来说都不太重要,重要的是平时成绩、卷面成绩以及最终成绩。有上面可以看出第一个数据就是平时成绩94,第二个是考试卷面成绩83,第三个就是最终成绩87.。(窃喜)

整个方法大致如此,相对简单,如果想要数据看起来更加简单明了,那就要进行数据清洗,把我们不关心的数据给剔除掉,直接显示分数。通过进行模拟登陆,查看成绩,我们的查分app的原理也大致如此。

值得注意的是,我刚开始进行尝试的时候也遇到了一些坑,我大致的说一下,如果你们遇到了,按照下面的方法应该就能解决。

1、忘记选择学年和学期(应该没有人会有这个失误吧),导致出现json文件里面是没有内容的,因为你没有向网站发送请求,自然他也不会给你返回数据。结果如下:

2、进行解码时,发现没有所要的数据,解码内容网页本来就有的,基本都为无用的数据,如下图所示

解决方法:点击左上角的clear按钮,再次点击学期成绩,让网站重新给你返回数据,因为出现这个问题可能是请求不完整或没有请求成功,重新请求后,再次查看即可。比较简单的判断方法:长度,如果你发现里面的加密数据特别长,说明请求是回来的数据是成功的了。

3、记得使用Chrome浏览器!!!

好啦,以上就是具体教程,动手试试会有想不到的惊喜啊。祝小伙伴们都过,别挂科!!

BTW,有空有能力的话再出一个爬取教务系统成绩的吧。

  • 15
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值