大学最后一年了,回想起没及时关注学校通知而错过的比赛、选课,就十分懊恼。于是就做了这个小程序,一方面可以查看最新通知,另一方面如果有最新的消息,就能及时推送给我。
那么问题来了,学校的各类网站不可能有提供 API 给调用。于是我就自己写爬虫,一个个网站爬。对同一个页面进行对比,发现哪些文章是新出的,就可以触发推送机制啦。
当然要给大家用,肯定要支持订阅啦。我设计了一个简单的订阅机制,可以自由选择想要得到推送的网站。
爬虫其实也没那么简单,因为很多网站要登录,而且要验证码,还作了层层跳转反爬虫。而且网站数量比较多,我一个个写过去工作量是吃不消的。总之最终是做出来了,有人对我的方案感兴趣的吗?可以评论讨论一下...我用的chrome headless browser。
做了 8、9 个 module,用 docker stack 以及 traefik 构建了简易的微服务,Service 内部用 GRPC 与 Rabbitmq 通信,前后端之间当然用 RESTful HTTP。
虽然对各位用处不太大,但是有兴趣的可以稍微体验一下:
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.