1、主要功能
用户通过天气推送服务器暴露出来的接口进行注册,注册完毕之后用户可以添加一些自己的亲朋好友的信息。每天定时爬取全国的天气,然后推送给用户的亲朋好友。
2、服务器
服务器使用的是一个协程版本的web服务器,支持get和post方法,底层用CGI方法处理带参数的请求。服务器对外暴露两个接口,用来进行注册和登录。
要登录的话,必须要有一个账号和密码,可以通过注册的接口进行注册,注册的信息会存到数据库中的login表中。登录成功之后会进入该用户的主页,该用户可以在自己的主页之中添加自己的亲朋好友的信息,这些添加的信息会存到数据库中的msg表中,服务器后台程序会定时向该用户的亲朋好友推送天气信息。
http服务器参考
3、爬虫爬取全国天气
使用scrapy框架,爬取全国的天气,将爬取的结果直接存入到数据库中的weather表中。
Scrapy框架参考
4、数据库中的表的结构
4.1、存放登录信息
存放用户信息的表的格式如下,我们以用户的tel信息作为键值,保证每个用户的信息都不会出现重复。tel可以被用来在msg表里面查找该用户的朋友的信息。