刷课机,一般指通过模拟用户操作,不断选课,从而试图选上某一门课的用于选课的程序。

以下列出了一些我写的刷课机……

清华刷课机

链接:文件:Coursel.py

其实写刷课机也是个学习python的过程……

清华的验证码比较复杂。为了识别这个验证码,用到了cuneiform。其实gocr的效果也不错。

对这个刷课机的详细分析,可见刷课机详解

北大刷课机

链接:文件:Coursel pku.py

链接:文件:Pointrmv.cpp

链接:文件:C pku.tar.gz

在清华的基础上改的,结构基本相同……

另外,这里引用了一个文件,pointrmv。北大的验证码太弱智了,所以自己搞了个简单的程序用来识别验证码……

这个验证码识别工具还用到了一些标准图像,从北大验证码里截的…… 这些在那个压缩包里。其实那个包里也有另外两个文件……

验证码识别

北大的验证码实在太弱,基本上就加了些噪点,别的没了……

所以识别程序先去掉那些点,然后匹配图片就完了。

用了libjpeg来载入图片。噪点识别好像就是看看深浅,太久了,忘了……

反正很弱……

某人被抓事件

好像某人拿我的刷课机在北大刷课的时候被抓了。然后他们那边的老师还让他交出源代码啥的。

但是其实不是他自己刷,而是我在清华访问北大网络刷课。因此,他也没有源代码。后来他联系我,说老师只要他交出源代码就不追究了。

其实这个刷课机也没啥技术含量对吧…… 所以我记得我就给他了。

后来就没有消息了,北大的系统好像还是很烂。