前几天花了两天时间开发了一个微信公众号,主要拿来查我们学校教务系统成绩。今天有空就给加上了代理和统计功能。 登陆界面

感觉 Python 写东西真的很好,好多人性化的模块,像我这种新手写程序感觉就是调用调用调用。只要处理好逻辑,基本就没有问题。这次开发注意用了 Flask 做 WEB 框架,用来与微信后台通信(前些日子写 "吃面条么" 公众号,摸熟了微信回复消息方法,这次就顺利了一些)。HTTP 抓网页相关的用的是人性化的 Requests 模块,比 urllib2 好用多了。抓到的页面就用 BeautifulSoup 分析,把成绩表格找出来,加入到字典。返回给微信的时候遍历输出就 OK 了。

查询界面

服务器部署在 SAE 上,主要是与微信后台通信快,而且我没有已经备案的域名,所以国内的服务器用不了。存储用的是新浪的 KVDB,感觉就是给 redis 改了个名字,调用方法基本就差不多。以前测试没有几个流量,就没有用代理,但是想到以后如果人多了,肯定会被学校的人封了 SAE 的 IP,所以还是早点用上代理。本来想自己网上抓代理,但是十分不稳定,就在 V2EX 上边问前辈们写爬虫的时候是怎么处理 IP 的,果然找到了神奇的淘宝,一块钱 5000 个代理,够我用一段时间了。刚开始是为了给我自己查成绩,写着就写成了多用户的,自己给自己改需求,以后要是做了产品经理会不会给程序员给打死啊。今天又给加了简单的计数统计功能,统计了绑定次数,查询次数,成功次数。看看这个期末能帮助多少人。

现在又计划给添加等级考试成绩查询,和课表查询功能。等有时间再加进去,还有坑爹的软件工程实验报告(一学期的)没有写呢,苦逼啊。

显示评论