2019想脱单?这款Python智能化“天气提醒”程序暖心你的小姐姐!

社区服务
高级搜索
猴岛论坛手机数码2019想脱单?这款Python智能化“天气提醒”程序暖心你的小姐姐!
发帖 回复
倒序阅读 最近浏览的帖子最近浏览的版块
1个回复

[手机新闻]2019想脱单?这款Python智能化“天气提醒”程序暖心你的小姐姐!

楼层直达
卖外挂死全家

ZxID:38322667

等级: 元老
遇到外挂直接举报,封杀外挂作者

举报 只看楼主 使用道具 楼主   发表于: 2018-12-31 0
2019想脱单?这款Python智能化“天气提醒”程序暖心你的小姐姐!
            冬天来啦,作为“特困户”,每天早上起床的速度感觉会击败全国3%的人。

但愿人长久,不做单身狗。

实现第一步,用“和风天气”API获取天气数据(当然你也可以选用其他的接口)
城市接口: https://api.heweather.com/x3/weather?cityid=城市ID&key=你的认证key
2016-11-08 update 和风天气的API11月初改版了,所以上述接口地址需要更换成新的,看了下就加了个“free-”,后面代码加上就好了。

城市ID
先不着急写码,我们用API调试工具试试这个接口,看看返回的是什么数据。
我用的是chrome下postman,打开postman,输入接口链接:
https://api.heweather.com/x3/weather?cityid=CN101010100&key=这里填你的key

Python内置数据类型和JSON的对应关系  

结果
我们此时已经将天气数据拿到,并且反序列化为Python对象了,只有提取我们需要的数据即可。看下天气API提供哪些数据

pm2.5的值  
上面说了JSON里面{}对应的是Python的dict,[]对应的是Python里的list,上图中可以比较清楚地知道这个JSON得到的Python数据其实是dict和list的多层嵌套。这里我们可以类比查《新华字典》,想要查到“天气”这个词,可以找到字母T的页码(按A~Z的有序列表),再找到“tian”所在的位置,一步步往里找就成找到想要的词了。
最外层是个dict类型:
dict: {'HeWeather...
获取天气数据的代码:
额······ 几十行 放上来比较占地方 哈哈 所以
小伙伴们 进 小编 Q 君 羊  
输入827 惊
接着502 喜
最后865 连在一起就是
到站后 问小编要“想要的代码”就好
不管是哪篇文章的源代码都是可以给的哈
一切只为优化阅读体验官方要求  
小编表示:

运行结果
第二步、将文字合成语音
我直接用的百度的语音合成API,调用方法很简单(浏览器就可以玩)
1、同样是注册登录获得key,百度语音  
2、注册个应用,随便啥应用都行,获得APPID
这几步都可以参考官方接入指南
3、获得token(一个月有效期,过期再获取即可)
浏览器输入:
https://openapi.baidu.com/oauth/2.0/token?grant_type=client_credentials&client_id=你的AppID&client_secret=你的AppKey
返回的JSON里面的“access_token”就是调用百度语音合成API要用的token
4、合成语音 ,必填、选填参数可看官方文档
http://tsn.baidu.com/text2audio?tex=需要合成语音的文本&lan=zh&per=0&cuid=设备mac地址或手机的IMEI码&ctp=1&tok=你的token  
5、我们只需要把天气文本放在第4步的链接tex=' '里面就好了
http://tsn.baidu.com/text2audio?tex=&lan=zh&per=0&cuid=设备mac地址或手机的IMEI码&ctp=1&tok=你的token%s
全部猜对的,有惊喜:“Python新年大礼包”
欢迎小伙伴评论区留言!
本帖de评分: 1 条评分 DB +15
DB+15 2019-01-05

你是一个和我一样酷的人

雾中列车`

ZxID:17730012

等级: 元老

举报 只看该作者 沙发   发表于: 2019-01-05 0
你是一个和我一样酷的人
« 返回列表
发帖 回复