技术研究笔记——明华在线SPOC EP1
拆网课相关接口的想法,其实早在去年就已经有初步的想法了,不过那会还没怎么接触py的网络请求部分,都在做web服务,包括框架和业务逻辑,主动去拆接口的很少弄。后来想到现在都说py做爬虫和深度学习这么厉害,那就去研究一下,毕竟直到那会,这都是我py最不拿手的方面,网路请求最先是参考了资料学习了睿站相关的模拟登录,后来做出来个模拟登录和首页头图抓取的小工具,学习了Beautifulsoup,之前用Selenium做模拟操作最先接触到爬虫相关的时候,了解过关于XML结构的内容,以及XPtah的一些使用,如今过了一学期有一些HTML基础之后逐渐已经会用诸如CSS选择器来进行更加高效的定位了。
后来做了睿站的小工具之后,想着想要自己拆出来个东西,于是开始研究蓝奏云,中途还是卡壳了几次,不得已参考了资料之后学习到关于Header请求头的设置来对抗反爬虫,就逐步做起来了,第三个就是明华在线,这部分自己研究的内容更多一些,特别是里面的RSA加密的实现着实卡了好一阵子,最终做到了成功登录来到课程页面底下获得所有课程之后就暂时没有再继续了,再到后来,在一个机缘巧合下,开始继续完善那个睿站小工具,后来做出个数据收集的服务后台,之后再配套了前端接口和前端页面,就有了番剧数据中心,不过那都是后话了。
这期间做过的东西,确实有很多也值得拿来分享,以后也会陆续整理出来(大概)。
明华在线的主页地址是http://www.minghuaetc.com/,说到这里一直很想吐槽,都什么年代了,页面还用http,再过一年估计不上https都要被浏览器默认拒绝了。
具体登录页面是http://www.minghuaetc.com/user/login,所以主页就可以无视了,其实在我今天进到登录页的时候把我整懵了,怎么登录页面突然间不一样了,我记得我以前拆的那会不是这样的,不过想到在主页或者说“明华在线”这个平台进入的登陆页,在登录时是需要选择学校的,然而实际上当选择学校登录之后是会被跳转到所属学校的专用域名的,但是更加奇怪的是,在这个页面即使是我输入了正确的学校和账号密码也无法登录(下文会有解释)
后来我直接找到了我之前浏览记录里面的地址http://scauzhujiang.minghuaetc.com/home/login.mooc看到了熟悉的页面,而两个域名为啥不大一样,于是我顺带用Linux底下的dig工具查了查背后的解析记录,果然发现不一样。
学校的专用域名scauzhujiang经解析是一条CNAME记录,指向的是另一条地址,看一眼那个地址根据现在做腾讯云业务部署的经验马上意识到是一个后端接入的云服务,接入了AWS的ELB,后来ELB一查证正是AWS的负载均衡服务,这个域名的服务地域在西北地区,具体位置是宁夏自治区
;; QUESTION SECTION: ;scauzhujiang.minghuaetc.com. IN A
;; ANSWER SECTION: scauzhujiang.minghuaetc.com. 45 IN CNAME minghuaetc-elb-947875315.cn-northwest-1.elb.amazonaws.com.cn. minghuaetc-elb-947875315.cn-northwest-1.elb.amazonaws.com.cn. 45 IN A 52.82.118.47 minghuaetc-elb-947875315.cn-northwest-1.elb.amazonaws.com.cn. 45 IN A 52.83.82.18
而至于明华在线的主域名则是一个正儿八经的服务器IP地址,其解析记录里的DNS服务器hichina域名引起我注意,根据在腾讯云的DNS解析经验,很快就能发现这个DNS提供商,也就是域名提供商是万网,万网是阿里云旗下品牌,在阿里云的whois上,果然发现这个域名正是由阿里云注册,使用阿里云的服务没跑了。
;; QUESTION SECTION: ;www.minghuaetc.com. IN A
;; ANSWER SECTION: www.minghuaetc.com. 348 IN A 140.143.48.100
;; AUTHORITY SECTION: minghuaetc.com. 116094 IN NS dns8.hichina.com. minghuaetc.com. 116094 IN NS dns7.hichina.com.
但是比较让我意外的新情况还没有结束,当我从学校官网的明华在线进入之后,却进入了新的地址http://scauzhujiangmh.minghuaetc.com/,其实就多了个mh,界面也变得和主域名一样了,再一查解析发现已经到了同一个服务器底下了,我尝试登陆上去却提示密码错误,这让我想起来了前一两个星期在发的什么明华在线的默认密码,这才让我意识到是因为更换了平台,那自然数据库没有迁移通用了,这个平台和以前使用的旧平台没有联系,接着我就意识到,大抵是因为网课兴起做了一波更新,才造成这样的情况。那这样自然有个最大的问题了:
原先的加密登录算法还管用吗?
在我登录后,发现里面的界面几乎更换了,所以不排除原先登录方式失效的问题。其实我又回去尝试了下旧的平台,依旧能正常登录,至于旧的平台会不会废弃就不得而知了,不过新的平台加密算法是否依旧适用,看起来还得再研究这个平台的流程了。
待续