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

这三个已经停用,数据不再更新,即使修改Referer,得到的已经不是正确的信息。

官网提供的API

一、调用规范 规范用于指导三方合作伙伴合理调用指数、3天常规预报(24小时)预报服务数据。

请求方式:http get

接口组成:由固定URL加5个不同的参数组成,完整URL需客户端经过固定方式加密后使用。

数据返回:json

完整URL:http://open.weather.com.cn/data/?areaid=""&type=""&date=""&appid=""&key=".urlencode($key);

固定URL:http://open.weather.com.cn/data/

需要申请ID

返回数据:

{
"c": {
"c1": "101010100",
"c2": "beijing",
"c3": "北京",
"c4": "beijing",
"c5": "北京",
"c6": "beijing",
"c7": "北京",
"c8": "china",
"c9": "中国",
"c10": "1",
"c11": "010",
"c12": "100000",
"c13": 116.391000,
"c14": 39.904000,
"c15": "33",
"c16": "AZ9010",
"c17": "+8"
},
"f": {
"f1": [{
"fa": "",
"fb": "01",
"fc": "",
"fd": "13",
"fe": "",
"ff": "0",
"fg": "",
"fh": "0",
"fi": "05:17|19:05"
},
{
"fa": "01",
"fb": "00",
"fc": "28",
"fd": "15",
"fe": "0",
"ff": "0",
"fg": "0",
"fh": "0",
"fi": "05:16|19:06"
},
{
"fa": "00",
"fb": "01",
"fc": "31",
"fd": "15",
"fe": "0",
"ff": "0",
"fg": "0",
"fh": "0",
"fi": "05:15|19:07"
}],
"f0": "201604281800"
}
}

================================================================================

中华万年历API

抓包中华万年历得到的接口(JSON):

http://wthrcdn.etouch.cn/weather_mini?city=北京

通过城市名字获得天气数据,json数据

http://wthrcdn.etouch.cn/weather_mini?citykey=101010100

通过城市id获得天气数据,json数据

数据和中国天气网(www.weather.com.cn)一致

数据:

{
"desc": "OK",
"status": 1000,
"data": {
"wendu": "22",
"ganmao": "各项气象条件适宜,无明显降温过程,发生感冒机率较低。",
"forecast": [{
"fengxiang": "南风",
"fengli": "3-4级",
"high": "高温 26℃",
"type": "多云",
"low": "低温 13℃",
"date": "28日星期四"
},
{
"fengxiang": "无持续风向",
"fengli": "微风级",
"high": "高温 28℃",
"type": "多云",
"low": "低温 15℃",
"date": "29日星期五"
},
{
"fengxiang": "无持续风向",
"fengli": "微风级",
"high": "高温 31℃",
"type": "晴",
"low": "低温 15℃",
"date": "30日星期六"
},
{
"fengxiang": "无持续风向",
"fengli": "微风级",
"high": "高温 29℃",
"type": "多云",
"low": "低温 20℃",
"date": "1日星期天"
},
{
"fengxiang": "北风",
"fengli": "4-5级",
"high": "高温 26℃",
"type": "小到中雨",
"low": "低温 13℃",
"date": "2日星期一"
}],
"yesterday": {
"fl": "微风",
"fx": "无持续风向",
"high": "高温 19℃",
"type": "小雨",
"low": "低温 12℃",
"date": "27日星期三"
},
"aqi": "118",
"city": "北京"
}
}

XML

http://wthrcdn.etouch.cn/WeatherApi?citykey=101010100

通过城市id获得天气数据,xml文件数据,

当错误时会有<error>节点

http://wthrcdn.etouch.cn/WeatherApi?city=北京

通过城市名字获得天气数据,xml文件数据

数据:

<resp>
<city>北京</city>
<updatetime>18:45</updatetime>
<wendu>22</wendu>
<fengli>2级</fengli>
<shidu>33%</shidu>
<fengxiang>东南风</fengxiang>
<sunrise_1>05:19</sunrise_1>
<sunset_1>19:06</sunset_1>
<sunrise_2/>
<sunset_2/>
<environment>
<aqi>118</aqi>
<pm25>61</pm25>
<suggest>儿童、老年人及心脏、呼吸系统疾病患者人群应减少长时间或高强度户外锻炼</suggest>
<quality>轻度污染</quality>
<MajorPollutants>臭氧8小时</MajorPollutants>
<o3>185</o3>
<co>1</co>
<pm10>101</pm10>
<so2>4</so2>
<no2>24</no2>
<time>18:00:00</time>
</environment>
<yesterday>
<date_1>27日星期三</date_1>
<high_1>高温 19℃</high_1>
<low_1>低温 12℃</low_1>
<day_1>
<type_1>小雨</type_1>
<fx_1>无持续风向</fx_1>
<fl_1>微风</fl_1>
</day_1>
<night_1>
<type_1>阴</type_1>
<fx_1>无持续风向</fx_1>
<fl_1>微风</fl_1>
</night_1>
</yesterday>
<forecast>
<weather>
<date>28日星期四</date>
<high>高温 26℃</high>
<low>低温 13℃</low>
<day>
<type>多云</type>
<fengxiang>南风</fengxiang>
<fengli>3-4级</fengli>
</day>
<night>
<type>多云</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
<weather>
<date>29日星期五</date>
<high>高温 28℃</high>
<low>低温 15℃</low>
<day>
<type>多云</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</day>
<night>
<type>晴</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
<weather>
<date>30日星期六</date>
<high>高温 31℃</high>
<low>低温 15℃</low>
<day>
<type>晴</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</day>
<night>
<type>多云</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
<weather>
<date>1日星期天</date>
<high>高温 29℃</high>
<low>低温 20℃</low>
<day>
<type>多云</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</day>
<night>
<type>小雨</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
<weather>
<date>2日星期一</date>
<high>高温 26℃</high>
<low>低温 13℃</low>
<day>
<type>小到中雨</type>
<fengxiang>北风</fengxiang>
<fengli>4-5级</fengli>
</day>
<night>
<type>多云</type>
<fengxiang>北风</fengxiang>
<fengli>3-4级</fengli>
</night>
</weather>
</forecast>
<zhishus>
<zhishu>
<name>晨练指数</name>
<value>适宜</value>
<detail>天气不错,空气清新,是您晨练的大好时机,建议不同年龄段的人们积极参加户外健身活动。</detail>
</zhishu>
<zhishu>
<name>舒适度</name>
<value>较舒适</value>
<detail>白天天气晴好,您在这种天气条件下,会感觉早晚凉爽、舒适,午后偏热。</detail>
</zhishu>
<zhishu>
<name>穿衣指数</name>
<value>舒适</value>
<detail>建议着长袖T恤、衬衫加单裤等服装。年老体弱者宜着针织长袖衬衫、马甲和长裤。</detail>
</zhishu>
<zhishu>
<name>感冒指数</name>
<value>少发</value>
<detail>各项气象条件适宜,无明显降温过程,发生感冒机率较低。</detail>
</zhishu>
<zhishu>
<name>晾晒指数</name>
<value>适宜</value>
<detail>天气不错,适宜晾晒。赶紧把久未见阳光的衣物搬出来吸收一下太阳的味道吧!</detail>
</zhishu>
<zhishu>
<name>旅游指数</name>
<value>适宜</value>
<detail>天气较好,但丝毫不会影响您出行的心情。温度适宜又有微风相伴,适宜旅游。</detail>
</zhishu>
<zhishu>
<name>紫外线强度</name>
<value>中等</value>
<detail>属中等强度紫外线辐射天气,外出时建议涂擦SPF高于15、PA+的防晒护肤品,戴帽子、太阳镜。</detail>
</zhishu>
<zhishu>
<name>洗车指数</name>
<value>较适宜</value>
<detail>较适宜洗车,未来一天无雨,风力较小,擦洗一新的汽车至少能保持一天。</detail>
</zhishu>
<zhishu>
<name>运动指数</name>
<value>较适宜</value>
<detail>天气较好,户外运动请注意防晒,推荐您在室内进行低强度运动。</detail>
</zhishu>
<zhishu>
<name>约会指数</name>
<value>适宜</value>
<detail>天气较好,和恋人一起徜徉于熙攘人群中或漫步于柔软草地上,都是不错的主意哦。</detail>
</zhishu>
<zhishu>
<name>雨伞指数</name>
<value>不带伞</value>
<detail>天气较好,不会降水,因此您可放心出门,无须带雨伞。</detail>
</zhishu>
</zhishus>
</resp>

一周天气预报接口

http://mobile.weather.com.cn/data/forecast/101010100.html?_=1461845405

1461845405为Unix的时间戳,貌似该参数没有什么用处?

返回数据:

{
"c": {
"c1": "101010100",
"c2": "beijing",
"c3": "北京",
"c4": "beijing",
"c5": "北京",
"c6": "beijing",
"c7": "北京",
"c8": "china",
"c9": "中国",
"c10": "1",
"c11": "010",
"c12": "100000",
"c13": "116.391",
"c14": "39.904",
"c15": "33",
"c16": "AZ9010",
"c17": "+8"
},
"f": {
"f1": [{
"fa": "01",
"fb": "03",
"fc": "10",
"fd": "5",
"fe": "0",
"ff": "0",
"fg": "0",
"fh": "0",
"fi": "06:21|17:40"
},
{
"fa": "07",
"fb": "07",
"fc": "19",
"fd": "12",
"fe": "0",
"ff": "0",
"fg": "0",
"fh": "0",
"fi": "06:22|17:38"
},
{
"fa": "02",
"fb": "00",
"fc": "15",
"fd": "5",
"fe": "8",
"ff": "8",
"fg": "3",
"fh": "1",
"fi": "06:23|17:37"
},
{
"fa": "00",
"fb": "00",
"fc": "16",
"fd": "4",
"fe": "0",
"ff": "0",
"fg": "0",
"fh": "0",
"fi": "06:24|17:35"
},
{
"fa": "00",
"fb": "00",
"fc": "18",
"fd": "7",
"fe": "0",
"ff": "0",
"fg": "0",
"fh": "0",
"fi": "06:25|17:34"
},
{
"fa": "00",
"fb": "01",
"fc": "18",
"fd": "8",
"fe": "0",
"ff": "0",
"fg": "0",
"fh": "0",
"fi": "06:26|17:32"
},
{
"fa": "01",
"fb": "01",
"fc": "16",
"fd": "6",
"fe": "0",
"ff": "0",
"fg": "0",
"fh": "0",
"fi": "06:27|17:31"
}],
"f0": "201310121100"
}
}

日期始终是201310121100,原因是服务器限制了Referer

气象图标下载

http://openweather.weather.com.cn/Home/Help/icon/iid/10.html

获取全国所有城市代码列表

方法一

XML接口根节点: http://flash.weather.com.cn/wmaps/xml/china.xml

XML接口主要作用是递归获取全国几千个县以上单位的城市代码,如:

http://flash.weather.com.cn/wmaps/xml/liaocheng.xml

方法二

更新:最新发现可以一次性获取全国+国外主要城市,8763个城市列表信息。

URL:http://mobile.weather.com.cn/js/citylist.xml

中国天气网API接口的更多相关文章

  1. 中国天气网-天气预报接口api

    中国天气网地址:http://www.weather.com.cn 请求服务 : 查询实时天气信息 http://www.weather.com.cn/data/sk/101110101.html 在 ...

  2. [转载]中国天气网API

    最近在做个网站要用到天气网的api,在网上找了些参考资料,这篇文章对天气网api的介绍比较详细,所以转载之,谢谢原作者的辛勤劳动和奉献精神. 原文地址:http://g.kehou.com/t1033 ...

  3. 中国天气网API

    中国天气网有三个 API 适用于不同场合的使用. http://m.weather.com.cn/data/101050101.html 这个接口返回的格式如下. { "weatherinf ...

  4. 中国天气网 JSON接口的城市编码解析及结果

    最近在弄一个Android应用,其中一个功能是天气情况展示,准备使用google的天气API服务(http://www.google.com/ig/api?hl=zh-cn&weather=, ...

  5. C#实现中国天气网JSON接口测试

    接上一篇,经过反复的查看,最终从这篇文章中找到了一个可用的JSON接口,于是研究了一下中国天气网JSON接口的测试: 和上一篇XML接口测试的原理是一样的,只是需要安装一下Newtonsoft.Jso ...

  6. C#实现中国天气网XML接口测试

    点击链接查看中国天气网接口说明,最近想研究一下接口测试,源于最近一次和某公司的技术总监(交大校友)谈话,发现接口测试的需求是比较大的,于是想要研究一下. 好不容易在网上找到了一个关于中国天气网的接口说 ...

  7. 天气预报接口api(中国天气网)

    中国天气weather.comhttp://m.weather.com.cn/data/101110101.html(六天预报) http://www.weather.com.cn/data/sk/1 ...

  8. 第十二、模块二、调用中国天气网和qqOnline及TrainTimeWebService接口来突出Json方法

    一. 浏览网页的时候,发送的请求.服务器反回来的永远是字符串,由于服务器后台使用的语言不通,所以就需要用工具反解,这里用到了json json方法一 json.loads()将字符串转化为python ...

  9. a中国天气网pi(json格式)

    http://m.weather.com.cn/data/101050101.html 此接口的回报格式例如以下 { "weatherinfo": { "city&quo ...

随机推荐

  1. 日期格式化使用 YYYY-MM-dd 的潜在问题

    昨天在v站上看到这个关于YYYY-MM-dd的使用而出现Bug的帖子(v2ex.com/t/633650)非常有意思,所以拿过来分享一下. 在任何编程语言中,对于时间.数字等数据上,都存在很多类似这种 ...

  2. 【C++】自加、自减(补充)

    // // main.cpp // [记录]自加.自减(补充) // // Created by T.P on 2018/3/7. // Copyright © 2018年 T.P. All righ ...

  3. JSONP Hijackin攻击详解

    JSONP Hijackin的中文意思是JSON劫持,而能产生JSON数据劫持的原因在于前端被跨站攻击了.跨站=跨域,跨域从字面上理解的话,就是指超出了范围.领域.继续追问一下,那超出了什么范围?原来 ...

  4. 1031 查验身份证 (15 分)C语言

    题目描述 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10 ...

  5. JavaScript-EventLoop-事件循环

    2020-01-11 EventLoop-事件循环 一.学习事件循环之前,先学习几个英语词组 EventLoop 事件循环 Event Queue 事件队列 Event Table 事件表macro- ...

  6. 开源项目SMSS开源项目(三)——protobuf协议设计

    本文的第一部分将介绍protobuf使用基础以及如何利用protobuf设计通信协议.第二部分会给出smss项目的协议设计规范和源码讲解. 一.Protobuf使用基础 什么是protobuf pro ...

  7. 使用C#交互快速生成代码!

    #r "System.Reflection" #r "D:\xk.erp\OP.Model\bin\Debug\OP.Model.dll" using Syst ...

  8. vue学习--组件之间的传值方式

    1.概述 vue由多个组件构成页面,在不同的组件中有不同的联系,组件之间的传值是十分有必要的 2.父子组件之间传值 --props和$emit 父传子:通过props 方法:子组件:props:['m ...

  9. Vue中echarts的基本用法

    前言:同大多数的前端框架一样,先读官网的使用方法.学会基本使用后,在实例中找到自己想要demo.拿过来改一改,一个echarts图表就形成,毕竟人家做就是为了方便使用. 我是在vue中下面直接使用的e ...

  10. 关于django中的get_or_create方法的坑

    最近在项目中发现了这样的一个坑,那就是我们的需求是不能添加一个相同的对象到数据库中,就通过某些字段的值组合成唯一值到数据库中去查找数据,如果没有找到对象,那就创建一条新的数据库记录,而刚好django ...