利用周六周日两天的时间我构建了一个python的订阅系统。
项目开源地址
https://github.com/ppmoon/rlkm
初衷
为什么会想起来写这么个程序?
基于两点
一、我知道你们肯定和我一样,每天接受的信息太多了,所以我希望通过一个系统和一个简单的应用每天定时向我推送我想要的信息。
二、手机上安装了很多应用,推送的消息都好烦,有些信息跟我鸟关系没有,但是那些应用还是给我推送这些消息,比如澳门赌场啊,护士妹妹23岁单身什么的。你单身和我有什么关系?要知道阅读就总是会浪费时间的,所以通过这个系统我希望把我手机上的应用统统卸载掉。然后通过邮件来接受我想要的信息。这样我就可以给我的asha310再买块电池,然后放弃智能手机。
程序
需求与思路
为了解决上面两个问题我想了一个非常简单的办法,就是用程序去抓取和过滤我想要知道和了解的消息,这部分内容我想通过机器学习的办法慢慢的矫正我想知道的信息。(就是说我每天应该知道啥完全交给硅基生命了)然后将这些消息通过email的方式发送给我,我每天就看一封邮件就看可以了,其他时间就在现实世界里专注眼下的事情,就算发呆我也觉得比盯着手机要好。
程序设计
我们自顶向下分步进行设计
1.构建一个计划任务引擎
2.让引擎调用一个发送email的程序
3.email从一个内容合成器里来获取email将要发送的内容。
4.内容合成器从内容抓取与过滤工厂获取内容。
根据以上步骤依次实现就可以了。代码部分参考项目库https://github.com/ppmoon/rlkm
这里就不详细赘述实现细节了,很多内容都是可以百度的,谷歌都不用。
注意点
1.实现计划任务引擎的时候,我使用了一个死循环让程序不停的去监听时间,是否和我设置的时间相等,相等就执行发送email的程序。
2.构建邮件发送程序的时候我使用了SMTP,自己搭建邮件服务器会有很多坑,这里要注意,要是发送失败很多时候是邮件服务器以为你是垃圾邮件,所以收件人,发件人,标题,内容这四个信息一定要全面。而且每次内容不要重复。
下一步
现在这个小程序只能定时给我发送天气情况
Paste_Image.png比如北京天气实时的JSON数据,我是比较懒还没有解析和渲染这个数据,所以下一步就是打算把天气数据重新找一个API抓,抓当天的全天情况。然后渲染出来,让email发送HTML内容。
最后
当然我这个是开源项目,欢迎大家来协作,当然了目前我写的这个几个类还是非常糟糕的,等我改好扩展接口了再来。(捂脸哭的表情)
网友评论