先看下效果图:python
用到的模块:mysql
PyMySQL
requests
threading
wxpy
要实现上面的示例,首先是有两大块地方sql
获取天气信息
经过微信将天气信息发送出去
而获取天气信息又包括几个小的须要注意的地方数据库
获取天气信息json
获取天气信息的接口
获取天气信息的城市
获取所在城市的城市码
假如咱们给多我的发送天气状况,这几我的来自不一样的城市,那么咱们不可能每次都要输入城市名,而后查找城市码,而后再访问接口,获取天气状况,这样会很是的麻烦,因此咱们须要考虑将城市名跟城市码一一对应起来,说到一一对应,首先想到的数据结构即是字典,因此咱们能够将这些信息存入一个字典里,而后持久化到一个文件中,这样便方便不少api
首先咱们获取最新的 city 表,这个表是一个 list 类型,大致格式以下:微信
[
{
"id": 1,
"pid": 0,
"city_code": "101010100",
"city_name": "北京",
"post_code": "100000",
"area_code": "010",
"ctime": "2019-07-11 17:30:06"
},
{
"id": 2,
"pid": 0,
"city_code": "",
"city_name": "安徽",
"post_code": null,
"area_code": null,
"ctime": null
}
]
咱们就简单的粘贴复制,放到一个空的列表中,以下所示,将全部的城市信息放到列表 citycode 中数据结构
citycode = [
{
"id": 1,
"pid": 0,
"city_code": "101010100",
"city_name": "北京",
"post_code": "100000",
"area_code": "010",
"ctime": "2019-07-11 17:30:06"
},
...
...
...
...
...
...
{
"id": 2,
"pid": 0,
"city_code": "None",
"city_name": "安徽",
"post_code": "null",
"area_code": "null",
"ctime": "null"
}<