前提
获取天气接口
这里我是用图灵机器人来获取天气的接口,你可以自己上去注册一个,下面代码URL的Key是我注册的机器人给的。1
2
3
4
5
6
7
8
9
10
11def getWeatherText():
try:
response = requests.get(
"http://www.tuling123.com/openapi/api?key=652ae4a714794fe6b01faa990d7a981f&info=%s" % "广州今日天气")
json = response.json()
if json["code"] == 100000:
return json["text"]
else:
return ""
except:
return ""
播放文字
利用百度的接口可以转换文本为语音。默认只有女声1
2
3
4
5def text2voice(text):
url = 'http://tts.baidu.com/text2audio?idx=1&tex={0}&cuid=baidu_speech_' \
'demo&cod=2&lan=zh&ctp=1&pdt=1&spd=4&per=4&vol=5&pit=5'.format(text)
# 用mplayer播放语音
os.system('mplayer "%s"' % url)
安装播放媒体软件
上面代码你看到的mplayer
,就是用来播放语音的,传个url作为参数1
2sudo apt-get install mplayer
usage: mplayer [url]
播放音乐
有了上面这个神器,你可以给播报语音前后加一首音乐😄1
2def playMusic(path):
os.system('mplayer %s' % path)
总结
利用上面的东东,可以组合些好玩的东西了,至于闹钟的唤醒,可以cron job 做,也可以代码里面实现,enjoy…😄
全部代码地址 https://github.com/ejunjsh/raspberrypi-code/blob/master/clock/weather.py