Python实现从百度API获取天气的方法


Posted in Python onMarch 11, 2015

本文实例讲述了Python实现从百度API获取天气的方法。分享给大家供大家参考。具体实现方法如下:

__author__ = 'saint'

import os

import urllib.request

import urllib.parse

import json

class weather(object):

    # 获取城市代码的uri

    code_uri = "http://apistore.baidu.com/microservice/cityinfo?cityname="

    # 获取天气信息的uri

    weather_uri = "http://apistore.baidu.com/microservice/weather?cityid="

    # 主处理逻辑

    def mainHandle(self):

        print("输入你要查询的天气:")

        city_name = input()

        uri = self.code_uri + urllib.parse.quote(city_name)

        ret = json.loads(urllib.request.urlopen(uri).read().decode("utf8"))

        if ret['errNum'] != 0:

            print(ret['retMsg'])

            return False

        else:

            weather_uri = self.weather_uri + ret['retData']['cityCode']

            data = json.loads(urllib.request.urlopen(weather_uri).read().decode("utf8"))

            if data['errNum'] == 0:

                ret_data = data['retData']

                output = "城市名:" + city_name + "\r\n"

                output += "更新时间:" + ret_data["date"] + " " + ret_data["time"] + "\r\n"

                output += "天气:" + ret_data["weather"] + " [" + ret_data["WD"] + ret_data["WS"] + "]\r\n"

                output += "当前温度:" + ret_data["temp"] + " (" + ret_data["h_tmp"] + " ---> " + ret_data["l_tmp"] + ")\r\n"

                print(output)

                return True

            else:

                print(data['errMsg'])

                return False

if __name__ == "__main__":

    weather = weather()

    weather.mainHandle()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python正则匹配查询港澳通行证办理进度示例分享
Dec 27 Python
python进阶教程之循环相关函数range、enumerate、zip
Aug 30 Python
Python实现的一个简单LRU cache
Sep 26 Python
python3学习笔记之多进程分布式小例子
Feb 13 Python
python爬虫之模拟登陆csdn的实例代码
May 18 Python
pandas 对每一列数据进行标准化的方法
Jun 09 Python
Windows系统下PhantomJS的安装和基本用法
Oct 21 Python
对python条件表达式的四种实现方法小结
Jan 30 Python
Django框架登录加上验证码校验实现验证功能示例
May 23 Python
python如何实现复制目录到指定目录
Feb 13 Python
树莓派升级python的具体步骤
Jul 05 Python
Python求区间正整数内所有素数之和的方法实例
Oct 13 Python
Python计算回文数的方法
Mar 11 #Python
Python用GET方法上传文件
Mar 10 #Python
Python爬取读者并制作成PDF
Mar 10 #Python
Python生成随机MAC地址
Mar 10 #Python
Python中实现结构相似的函数调用方法
Mar 10 #Python
Python实现CET查分的方法
Mar 10 #Python
Python实现的批量下载RFC文档
Mar 10 #Python
You might like
博士208HAF收音机实习报告
2021/03/02 无线电
用PHP调用数据库的存贮过程!
2006/10/09 PHP
下载文件的点击数回填
2006/10/09 PHP
PHP实现QQ登录的开原理和实现过程
2018/02/04 PHP
PHP实现单例模式建立数据库连接的方法分析
2020/02/11 PHP
JQUERY操作JSON实例代码
2010/02/09 Javascript
jquery-syntax动态语法着色示例代码
2014/05/14 Javascript
window.onload使用指南
2015/09/13 Javascript
基于jquery fly插件实现加入购物车抛物线动画效果
2016/04/05 Javascript
JS检测页面中哪个HTML标签触发点击事件的方法
2016/06/17 Javascript
html+js+highcharts绘制圆饼图表的简单实例
2016/08/04 Javascript
微信小程序 网络API 上传、下载详解
2016/11/09 Javascript
JS重载实现方法分析
2016/12/16 Javascript
highCharts提示框中显示当前时间的方法
2019/01/18 Javascript
基于Vue实现平滑过渡的拖拽排序功能
2019/06/12 Javascript
Python实现变量数值交换及判断数组是否含有某个元素的方法
2017/09/18 Python
基于Python函数的作用域规则和闭包(详解)
2017/11/29 Python
Python实现控制台中的进度条功能代码
2017/12/22 Python
python通过tcp发送xml报文的方法
2018/12/28 Python
Python 类的魔法属性用法实例分析
2019/11/21 Python
Python IDLE或shell中切换路径的操作
2020/03/09 Python
opencv中图像叠加/图像融合/按位操作的实现
2020/04/01 Python
Python使用pyyaml模块处理yaml数据
2020/04/14 Python
美国医疗用品、医疗设备和家庭保健用品商店:Medical Supply Depot
2018/07/08 全球购物
TIME时代杂志台湾总代理:台时亚洲
2018/10/22 全球购物
意大利和国际奢侈品牌购物网站:Suitnegozi.com
2021/01/15 全球购物
庆元旦广播稿
2014/02/10 职场文书
税务干部鉴定材料
2014/02/11 职场文书
八项规定整改方案
2014/02/21 职场文书
歌唱比赛主持词
2014/03/18 职场文书
超市创业计划书
2014/09/15 职场文书
国家机关领导干部民主生活会对照检查材料思想汇报
2014/09/17 职场文书
高一军训决心书
2015/02/05 职场文书
正规借条模板
2015/05/26 职场文书
大学生暑期社会实践的个人总结!
2019/07/17 职场文书
linux中nohup和后台运行进程查看及终止
2021/06/24 Python