【DIY】ESP8266太阳能气象站微信订阅号python后台
本帖最后由 straka 于 2018-8-22 11:10 编辑每天户外运动,想有个能自动查询天气的方式,然而单位地方比较偏,周边没有气象部门站点,最近的有天气预报的地方也是三十多公里外的城区了。那就DIY一个呗。
某宝上找了找有各种模块,最近又学习了python,很快就有了思路。先做个硬件定时采集气象数据发送到服务端,服务端收到数据记录下以供查找中。结合微信的公众号接口,响应公众号查询请求。
硬件部分参考另一篇博文【气象信息采集装置http://www.straka.cn/blog/meteorological_info_collecter/】。
服务端
微信订阅号对服务器端有约束,必须是80端口,收发均封装成XML格式,微信官网提供了xml解析封装的示例代码,直接使用就可以。
服务器端由python搭建,引用web模块监听80端口,同时服务端监听另一个端口,气象采集端将采集到的气象数据发送至该端口,服务端接收后按格式处理好并记录。
用户在订阅号后台发送消息后,微信服务器会封装成xml消息转发至python服务端,服务端对80端口传入的xml请求解析并获取请求用户等信息,并提取最近一次采集到的气象数据,根据请求封装成规定的xml格式返回微信后台,由微信后台发送至用户端。
除天气查询外的其他功能都是通过python服务端直接处理并响应。
这里就不贴代码了,详细代码见
原博客:http://www.straka.cn/blog/wechat_subscribe_python_server/
也可以直接看源码:
https://github.com/atp798/BlogStraka/tree/master/WechatSubscriptionServ
订阅号效果图如下
原博客见http://www.straka.cn/blog/wechat_subscribe_python_server/ 挺好的东西,产品化,收藏了
页:
[1]