import requests        #引用requests模块
import pygame # 获取天气
def inquery(self):
url = "https://free-api.heweather.com/v5/now?city={0}".format(self)+"&key=2d849c62d67a4b9e94607d0f1c744561"
# url = "https://free-api.heweather.com/v5/now?city=钦州&key=2d849c62d67a4b9e94607d0f1c744561"
respone = requests.get(url=url)
deal(respone.json()) # 数据处理
def deal(self): data = self['HeWeather5'][0]['basic']['city']+'实时天气:'+self['HeWeather5'][0]['now']['cond']['txt']+',温度:'+self['HeWeather5'][0]['now']['tmp']+',相对湿度:'+self['HeWeather5'][0]['now']['hum']+','+self['HeWeather5'][0]['now']['wind']['dir']+self['HeWeather5'][0]['now']['wind']['sc']+'级。'
# 获取城市
print(data)
print(self['HeWeather5'][0]['basic']['city']) # 获取天气状况
print(self['HeWeather5'][0]['now']['cond']['txt']) # 相对湿度
print(self['HeWeather5'][0]['now']['hum']) # 温度
print(self['HeWeather5'][0]['now']['tmp']) # 风级
print(self['HeWeather5'][0]['now']['wind']['dir'])
print(self['HeWeather5'][0]['now']['wind']['sc'])
voice(data) # 音频处理(这里调用的是百度语音的接口,官网有使用教程,很简单~)
def voice(data):
from aip import AipSpeech """ 你的 APPID AK SK """
APP_ID = '你的 App ID' API_KEY = '你的 Api Key' SECRET_KEY = '你的 Secret Key client = AipSpeech(APP_ID, API_KEY, SECRET_KEY) result = client.synthesis(data, 'zh', 1, {
'vol': 5,
}) # 识别正确返回语音二进制 错误则返回dict 参照下面错误码
if not isinstance(result, dict):
with open('auido.mp3', 'wb') as f:
f.write(result)
play() # 播放音频
def play():
import time
import pygame
file = r'auido.mp3'
pygame.mixer.init()
print("播放天气:")
track = pygame.mixer.music.load(file) pygame.mixer.music.play()
time.sleep(10)
pygame.mixer.music.stop() if __name__ == '__main__':
print("天气查询系统:")
city = input("请输入要查询的城市>>>: ")
inquery(city)

Python 天气查询到实现语音播放的更多相关文章

  1. Python学习笔记——天气查询代码

    天气查询代码1 # 此程序无法运行,因为中国天气网的api接口被关闭了 import urllib.request import json import pickle #建立城市字典 pickle_f ...

  2. Python 爬虫实现天气查询(可视化界面版)

    github项目地址:StarMan Python 实现天气查询的程序早已完成,近日开学无课,昨晚心血来潮想做一个较为友好的界面版本,便匆忙行动了起来. 在之前已有的程序的基础上使用Tkinter 模 ...

  3. Python 爬虫+tkinter界面 实现历史天气查询

    文章目录 一.实现效果 1. python代码 2. 运行效果 二.基本思路 1. 爬虫部分 2. tkinter界面 一.实现效果 很多人学习python,不知道从何学起.很多人学习python,掌 ...

  4. Flask开发天气查询软件,带你掌握pipenv的使用与手机Termux下的部署

    关于pipenv 昨天介绍了pipenv这个相比于virtualenv更高端大气上档次的虚拟环境管理软件,但看了下流量貌似不是很受欢迎,也许是我介绍的不够好吧.那么今天就拿它做一个例子,开发一款天气预 ...

  5. H5天气查询demo(二)

    最近刚好有空,学长帮忙让做个毕设,于是我提到了那个基于H5地理位置实现天气查询的方法,学长听了也觉得不错,于是就这个主题,扩展了一下,做了一个航班管理查询系统,为上次博客中提到的利用H5 api中的经 ...

  6. C#调用天气查询服务

    先引入天气查询服务 1.有点引用导入服务引用 //实例化            web引用名.WeatherWebService cn = new web引用名.WeatherWebService() ...

  7. 【转】根据中国气象局提供的API接口实现天气查询

    本文转载自 老三 的 三叶草 中国气象局提供了三个天气查询的API接口: [1]http://www.weather.com.cn/data/sk/101190101.html [2]http://w ...

  8. js仿微信语音播放

    html结构如下: <div class="app-voice-you" voiceSrc="xx.mp3"> <img class=&quo ...

  9. 天气查询SDK

    简介: 这是一个用于查询天气的SDK,在很多时候,尤其是对接多而小功能公众账号的时候,天气查询比较使用,此SDK就是这样的用途,使用的是中国天气网的API,已经集成了网上最靠谱的方式来实现,包括里面的 ...

随机推荐

  1. .net 去除特殊字符

    str = Regex.Replace(str, @"<script[^>]*?>.*?</script>", "", Regex ...

  2. PHP 获取当前访问的完整URL

    代码如下: <?php // php 获取当前访问的完整url function GetCurUrl() { $url = 'http://'; if(isset($_SERVER['HTTPS ...

  3. react的this.setState没有触发render

    一.浅比较 出现情况: 明明改变了值, 并且回调函数也触发了, 但是就是不触发render import React, { PureComponent } from 'react' import { ...

  4. mysq带条件的分页查询数据结果错误

    记一次mysql分页条件查询的结果出错: 以一张用户表为例,首先我们看表中的所有数据,注意红色框住的部分: 我们使用不带条件的分页查询来查询,数据显示是OK的: SELECT id,login_nam ...

  5. js的点滴

    一些好的博客 http://www.cnblogs.com/coding4/p/7809063.html canvas http://www.cnblogs.com/coding4/p/5593954 ...

  6. 杂记-python

    1.在cmd输入python -V显示当前python的版本信息,一定是大写的V 2.输入python,进入python解释器里面 3.在解释器中,输入exit()或者quit()会退出,一定要加括号 ...

  7. LayaAir引擎开发HTML5最简单教程(面向JS开发者)

    LayaAir引擎开发HTML5最简单教程(面向JS开发者) 一.总结 一句话总结:开发游戏还是得用游戏引擎来开发,其实很简单啦 切记:开发游戏还是得用游戏引擎来开发,其实很简单,引擎很多东西都帮你做 ...

  8. 从身份证管理系统思考企业CMDB的建设

    关注嘉为科技,获取运维新知 对大部分中大型的企业来说,CMDB建设对于整个IT服务和IT运维管理的重要性不言而喻,但是目前仍然有非常多的企业无法建设好CMDB. 我最近刚好接触了一个公安系统的朋友,他 ...

  9. docker 中安装 redis

    使用以下命令在Docker Hub搜索Redis镜像docker search redis 使用以下命令拉取镜像,Redis的镜像docker pull redis:latest 使用以下命令查看,本 ...

  10. Android测试(二)——adb常用命令

    连接设备: 安装应用包apk文件: adb install apk文件 卸载应用: adb uninstall 包名 将设备中的文件放到本地: adb pull 设备文件目录 本地文件目录 将本地文件 ...