课程表的实现(1)(基于强智科技教务系统)
1,本小系统服务于在校大学生。用户可以根据代码定制安装自己的轻量级课程表app在手机上(当然,可以把网络请求部分修改移植到PC或者Web平台上)。
2,好处:再也不用为了在手机上看课表而专门去下载30~60MB不等大小并且有各种干扰信息的APP了。 同时,许多教务系统只能用IE登陆,是否让人恼火?
3,这里尝试做个简单的课表查询小程序(Android)。当然对于这里所提到的网络请求都清楚了,可以实现更多基于教务系统周边更有意思的应用。
4,源代码可以在github上查看
阅读前
在阅读本文章,代码的时候假定你已经对 HTTP的GET,POST 有基本的认识。知道 HTML的form 表单干什么用。
对基于 "强智科技教务系统" 的同学友好。因为他们做的登陆接口,查询接口相差不大。我找了几个跟本校教务系统界面差不多的系统,查看了 验证码接口,登陆接口 。发现几乎没什么变化。所以我猜内部的课表接口是重用的一套代码。
下面是我找到的跟本校的教务系统同一风格并且验证码接口,登陆接口一样的教务系统界面截图。(至于内部课表的接口我就不知道是否跟本校的接口格式一致,大家具体情况具体分析)
当然这个登陆接口也类似啦
当然对于非 "强智科技教务系统" 的同学来说,也很容易根据代码分析,然后写出适合自己学校的课表查看小程序。
代码重在分析网络请求,筛选重要信息。 这是任何人都能学到的知识。
源码说明
本代码最终数据呈现平台为 Android ,在解析接口,获得数据过程中会讲解怎么将其呈现在界面上。当然你也可以做基于web,PC端的。
代码仍有不足,后续会更新,可持续关注哟:学期灵活切换;验证码识别。
代码模块解析
1. 网络请求
教务系统登陆通用 三要素 :账号,密码,验证码(Tips: 有些系统验证码没有,实现更容易; 我学校教务系统里有学生,家长选项,默认设置学生就好)
有了所述的三要素,我们就可以进入教务系统进行各项操作啦。下面是分析网络请求。
打开浏览器(这里我们用Chrome浏览器,当然firefox也有类似的如下操作),进入教务网登陆界面,按F12弹出 开发者工具 点击 Network ,再在最左侧点击教务网的 请求