中国国家气象局提供了获取所在城市天气预报信息的接口。通过这个接口,我们就可以获取天气信息了。

中国国家气象局天气预报接口总共提供了三个:

http://www.weather.com.cn/data/sk/101010100.html

http://www.weather.com.cn/data/cityinfo/101010100.html

http://m.weather.com.cn/data/101010100.html

其中,最详细的信息来自第三个接口。上面url中的101010100是城市代码,这里是北京的城市代码。只需要改变城市代码,就可以得到所在城市的天气信息。

如,武汉的城市代码是101200101,所以所需要的url应该为 http://m.weather.com.cn/data/101200101.html,从而就可以读到天气的信息。

天气信息的数据结构是json,数据如下:

{"weatherinfo":{"city":"武汉","city_en":"wuhan","date_y":"2012年7月2日","date":"","week":"星期一","fchh":"11","cityid":"101200101","temp1":"35℃~27℃","temp2":"34℃~27℃","temp3":"34℃~27℃","temp4":"35℃~27℃","temp5":"35℃~27℃","temp6":"35℃~28℃","tempF1":"95℉~80.6℉","tempF2":"93.2℉~80.6℉","tempF3":"93.2℉~80.6℉","tempF4":"95℉~80.6℉","tempF5":"95℉~80.6℉","tempF6":"95℉~82.4℉","weather1":"多云","weather2":"多云","weather3":"多云","weather4":"多云","weather5":"多云","weather6":"多云","img1":"1","img2":"99","img3":"1","img4":"99","img5":"1","img6":"99","img7":"1","img8":"99","img9":"1","img10":"99","img11":"1","img12":"99","img_single":"1","img_title1":"多云","img_title2":"多云","img_title3":"多云","img_title4":"多云","img_title5":"多云","img_title6":"多云","img_title7":"多云","img_title8":"多云","img_title9":"多云","img_title10":"多云","img_title11":"多云","img_title12":"多云","img_title_single":"多云","wind1":"微风","wind2":"微风","wind3":"微风","wind4":"微风","wind5":"微风","wind6":"微风","fx1":"微风","fx2":"微风","fl1":"小于3级","fl2":"小于3级","fl3":"小于3级","fl4":"小于3级","fl5":"小于3级","fl6":"小于3级","index":"炎热","index_d":"天气炎热,建议着短衫、短裙、短裤、薄型T恤衫、敞领短袖棉衫等清凉夏季服装。","index48":"炎热","index48_d":"天气炎热,建议着短衫、短裙、短裤、薄型T恤衫、敞领短袖棉衫等清凉夏季服装。","index_uv":"中等","index48_uv":"中等","index_xc":"适宜","index_tr":"一般","index_co":"很不舒适","st1":"35","st2":"28","st3":"35","st4":"28","st5":"35","st6":"26","index_cl":"较适宜","index_ls":"适宜","index_ag":"不易发"}}

天气信息解释为:

{

"weatherinfo":{

"city":"福州",

"city_en":"fuzhou",

"date_y":"2012年5月14日",

"date":"",

"week":"星期一",

"fchh":"08",

"cityid":"101230101",

"temp1":"29℃~23℃","temp2":"26℃~20℃","temp3":"24℃~20℃","temp4":"25℃~20℃","temp5":"24℃~21℃","temp6":"25℃~22℃",

"tempF1":"84.2℉~73.4℉","tempF2":"78.8℉~68℉","tempF3":"75.2℉~68℉","tempF4":"77℉~68℉","tempF5":"75.2℉~69.8℉","tempF6":"77℉~71.6℉",

"weather1":"阵雨转中雨","weather2":"中雨转小雨","weather3":"小雨","weather4":"小雨","weather5":"小雨转阵雨","weather6":"阵雨转小雨",

"img1":"3","img2":"8","img3":"8","img4":"7","img5":"7","img6":"99","img7":"7","img8":"99","img9":"7","img10":"3","img11":"3","img12":"7","img_single":"3",

"img_title1":"阵雨","img_title2":"中雨","img_title3":"中雨","img_title4":"小雨","img_title5":"小雨","img_title6":"小雨","img_title7":"小雨","img_title8":"小雨","img_title9":"小雨","img_title10":"阵雨","img_title11":"阵雨","img_title12":"小雨","img_title_single":"阵雨",

"wind1":"微风","wind2":"微风","wind3":"微风","wind4":"微风","wind5":"微风","wind6":"微风","fx1":"微风","fx2":"微风",

"fl1":"小于3级","fl2":"小于3级","fl3":"小于3级","fl4":"小于3级","fl5":"小于3级","fl6":"小于3级",

"index":"热",

"index_d":"天气较热,建议着短裙、短裤、短套装、T恤等夏季服装。年老体弱者宜着长袖衬衫和单裤。",

"index48":"暖","index48_d":"较凉爽,建议着长袖衬衫加单裤等春秋过渡装。年老体弱者宜着针织长袖衬衫、马甲和长裤。",

"index_uv":"弱","index48_uv":"最弱",

"index_xc":"不宜",

"index_tr":"适宜",、

"index_co":"较不舒适",

"st1":"27","st2":"21","st3":"24","st4":"18","st5":"22","st6":"18",

"index_cl":"较不宜",

"index_ls":"不太适宜",

"index_ag":"不易发"

}

}

具体的json数据结构的知识,我们下一篇文章介绍。

现在我们需要知道的是:json的数据结构和python中的字典很相似。

那么接下来的工作就是,如何用python去解析json数据结构中的信息。

实际上JSON就是Python字典的字符串表示,但是字典作为一个复杂对象是无法直接转换成定义它的代码的字符串(不能传递所以需要将其转换成字符串先),Python有一个叫simplejson的库可以方便的完成JSON的生成和解析,这个包已经包含在Python2.6中,就叫json 主要包含四个方法: dump和dumps(从Python生成JSON),load和loads(解析JSON成Python的数据类型)

dump和dumps的唯一区别是dump会生成一个类文件对象,dumps会生成字符串,同理load和loads分别解析类文件对象和字符串格式的JSON。

还有一点疑惑就是关于字符编码的,有待继续研究

python天气预报的功能介绍_python 实现天气预报功能相关推荐

  1. python实现计算器功能键介绍_python实现计算器功能

    本文实例为大家分享了python计算器的具体代码,供大家参考,具体内容如下 主要用到的工具是Python中的Tkinter库 比较简单 直接上图形界面和代码 引用Tkinter库 from tkint ...

  2. keyshot聚光灯_渲染软件Keyshot8新版本功能介绍,这些新功能你都知道吗?

    渲染软件Keyshot8新版本功能介绍,这些新功能你都知道吗? 渲染软件Keyshot已经更新到8版本了,最新版本是Keyshot8,相比于老旧版本,肯定是有了翻天覆地的变化,这些新功能你又了解多少呢 ...

  3. python天气预报的功能介绍_python实现智能语音天气预报

    本系统主要包括四个函数: 1.获取天气数据 1.输入要查询天气的城市 2.利用urllib模块向中华万年历天气api接口请求天气数据 3.利用gzip解压获取到的数据,并编码utf-8 4.利用jso ...

  4. python工具的功能介绍_Python功能工具

    python工具的功能介绍 One of the biggest power which Python demonstrates is providing tools for writing reus ...

  5. python的功能介绍_Python之int内部功能介绍

    int内部功能的介绍 type(): 1.基本数据类型使用type()函数时,得到相应的数据类型 a = 12 b = 12.01 c = "123" print(type(a)) ...

  6. python中的translate函数_python中翻译功能translate模块实现方法

    现如今,各个国家交流密切,通过翻译使我们打破了语言壁垒,而翻译在互联网上的存在也尤为普遍.python中执行翻译操作的包是translate包,通过下载安装translate包,使用translate ...

  7. python朋友圈自动点赞_python自动点赞功能的实现思路

    1.思路 通过pyautogui可以实现鼠标点击.滚动鼠标.截屏等操作.由此功能实现打开页面,进行点赞. aircv可以从大图像获得小图像的位置,利用pyautogui截屏得到的图片,可以在页面获取到 ...

  8. python类和对象介绍_python中的类,对象,方法,属性等介绍

    注:这篇文章写得很好.加底纹的是我自己的理解 python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性( ...

  9. python时间倒计时显示屏厂家_python 实现倒计时功能(gui界面)

    运行效果: 完整源码: ##import library from tkinter import * import time from playsound import playsound ## di ...

最新文章

  1. HDU 4467 分块
  2. r语言glmnet包系数显示不全_第一章: R语言介绍
  3. 预编译头文件来自编译器的早期版本_Debug
  4. 使用 dotnet watch 开发 ASP.NET Core 应用程序
  5. python创建提示用户输入查询条件_python流程控制练习
  6. spark学习-38-Spark的MemoryManager
  7. 在Typescript中使用ASP.NET Core SignalR和React创建实时应用程序
  8. ArcGIS 导出点图层的中的XY坐标
  9. 超实用windows软件推荐!新电脑必装哪些软件?
  10. 原创力文档怎么免费下载_简历模板免费资源 word文档模板下载
  11. java 读取文件 效率_JAVA读写文本文件的效率
  12. SQL连接查询语句(内、外、交叉和合并查询)
  13. 小度智能音响拆解 芯片_拆机解析,小度智能音箱1S,万能遥控版音箱,这做工你想不到...
  14. hbase 二级索引方案
  15. 计算机桌面黑底怎么弄,win7怎么设置桌面背景 win7桌面背景变成黑色问题
  16. Java面试题笔试题汇总
  17. mysql查询排名名次
  18. 《上瘾:让用户养成使用习惯的四大产品逻辑》读书笔记
  19. cNc数控Z轴服务器在什么位置,五轴数控机床A、C旋转轴分别安装在哪里?
  20. 基金从业考试一般要准备多长时间?

热门文章

  1. [HDU 5445]Food Problem[多重背包]
  2. Linux电脑eduroam怎么连,【SHU·新生季】校园网连接指南
  3. HTTP协议响应状态码(301、302、303的区别)
  4. 基于esp32-cam的监控小车
  5. 【洛谷P6199 [EER1]河童重工】【点分治+虚树】
  6. 五子棋ai:极大极小搜索和α-β剪枝算法的思想和实现(qt和c++)(一)引言和界面设计
  7. 写完博客文章后,再给爬下来,保存在本地~ 哈阿哈
  8. 如何连接成组箱线图中的平均值(seaborn)
  9. python星星万花筒_少儿编程分享:码趣君教你用Python编写推星星游戏(完)
  10. 区块链开发公司 区块链何时能产生实际价值?