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 相关文章推荐
centos系统升级python 2.7.3
Jul 03 Python
Tornado高并发处理方法实例代码
Jan 15 Python
Python实现发送与接收邮件的方法详解
Mar 28 Python
python中单下划线_的常见用法总结
Jul 10 Python
浅谈Python脚本开头及导包注释自动添加方法
Oct 27 Python
Python中Numpy mat的使用详解
May 24 Python
Python split() 函数拆分字符串将字符串转化为列的方法
Jul 16 Python
浅析python redis的连接及相关操作
Nov 07 Python
Python 内置变量和函数的查看及说明介绍
Dec 25 Python
Python xlrd/xlwt 创建excel文件及常用操作
Sep 24 Python
python opencv常用图形绘制方法(线段、矩形、圆形、椭圆、文本)
Apr 12 Python
Python通过m3u8文件下载合并ts视频的操作
Apr 16 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
PHP 函数学习简单小结
2010/07/08 PHP
php绘图之生成饼状图的方法
2015/01/24 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
Yii2数据库操作常用方法小结
2017/05/04 PHP
在textarea中显示html页面的javascript代码
2007/04/20 Javascript
JavaScript 利用Cookie记录用户登录信息
2009/12/08 Javascript
JavaScript 嵌套函数指向this对象错误的解决方法
2010/03/15 Javascript
JavaScript之引用类型介绍
2012/08/10 Javascript
jquery绑定事件不生效的解决方法
2014/02/11 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
JS截取url中问号后面参数的值信息
2014/04/29 Javascript
js实现飞入星星特效代码
2014/10/17 Javascript
JavaScript生成随机字符串的方法
2015/03/19 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
2015/12/08 Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
2016/03/16 Javascript
AngularJS基础 ng-src 指令简单示例
2016/08/03 Javascript
js实现兼容PC端和移动端滑块拖动选择数字效果
2017/02/16 Javascript
vue.js的提示组件
2017/03/02 Javascript
JavaScript中Dom操作实例详解
2019/07/08 Javascript
Vue.js计算机属性computed和methods方法详解
2019/10/12 Javascript
js实现双色球效果
2020/08/02 Javascript
简化Python的Django框架代码的一些示例
2015/04/20 Python
Python 多核并行计算的示例代码
2017/11/07 Python
解决安装pycharm后不能执行python脚本的问题
2019/01/19 Python
Python模块、包(Package)概念与用法分析
2019/05/31 Python
tensorflow之变量初始化(tf.Variable)使用详解
2020/02/06 Python
台湾网友喜爱的综合型网路购物商城:Yahoo! 奇摩购物中心
2018/03/10 全球购物
手术室护士自我鉴定
2013/10/14 职场文书
学生会竞选演讲稿学习部
2014/08/25 职场文书
处级干部反四风个人对照检查材料思想汇报
2014/09/27 职场文书
会计专业求职信范文
2015/03/19 职场文书
详解MySQL 用户权限管理
2021/04/20 MySQL
SQL 窗口函数实现高效分页查询的案例分析
2021/05/21 SQL Server
TV动画《史上最强大魔王转生为村民A》番宣CM公布
2022/04/01 日漫
Python使用mitmproxy工具监控手机 下载手机小视频
2022/04/18 Python
Redis主从复制操作和配置详情
2022/09/23 Redis