历史天气

查询国内城市气象数据,同时也支持国外热门城市查询
接口编号: 506接口名称: 天气预报连接应用: 8179个
应用编号: 106007应用标识: weather.history服务商: NowAPI

说明

注意:
1. 本接口可获取自2015-07-07之后,包括当天。 
2. 历史天气数据来自实时天气(weather.today)数据归档.
3. 历史天气数据支持跨度较大(N+年),期间会遇到行政区重新划分及调整的情况,新增或下线的城市在某此时间节点会出现一定的数据断层,可参考weather.city接口中upddate(更新时间)、mk(当前可用状态)和remark(备注)栏位。

例:http://api.k780.com/?app=weather.history&weaId=1&date=2015-07-20&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json (示例中sign会不定期调整)

调用方式

Get/Post

请求url

 HTTP: http://api.k780.com
HTTPS: https://sapi.k780.com

请求参数

参数 类型 是否必须 备注
weaId string 通过weaId查询,例: 1
城市列表城市列表中weaId
(参数weaId,cityId,cityNm,cityIp,wgs84ll中取1个作为查询条件)
cityId number 通过气象局编号查询,例: 101010100
城市列表城市列表中cityId
cityNm string 通过中文城市名查询,例: 北京
城市列表城市列表中cityNm (带入前urlencode)
cityIp string 通过ip地址查询,例: 202.104.153.201
wgs84ll string 通过经纬度坐标查询,例:116.442708,39.917344
(付费用户可用)
date date 查询的日期 yyyymmdd,单次只能查询一天
appkey string 使用API的唯一凭证 获取
sign string md5后的32位密文,登陆用. 获取
format {json|xml} 返回数据格式

Json请求示例

http://api.k780.com/?app=weather.history&weaId=城市编号(1)&date=查询的日期(2015-07-20)&appkey=APPKEY&sign=SIGN&format=json

Json返回示例

1.正常返回
{
  "success": "1",
  "result": [
    {
        "weaid": "1",
        "week": "星期一",
        "cityno": "beijing",
        "citynm": "北京",
        "cityid": "101010100",  /*气象编号*/
        "uptime": "2015-07-20 00:50:00",  /*更新时间*/
        "temperature": "22℃",  /*该时段温度*/
        "humidity": "97%",  /*该时段湿度*/
        "aqi": "101",  /*PM2.5 AQI*/
        "weather": "晴",  /*该时段天气*/
        "weather_icon": "http://api.k780.com/upload/weather/d/0.gif", /*时段气象图标 全部气象图标下载*/
        "wind": "东北风",  /*该时段风向*/
        "winp": "1级",  /*该时段风力*/
        "temp": "22",  /*温度*/
        "weatid": "1", /*天气编号*/
        "windid": "13",  /*风向编号*/
        "winpid": "201"  /*风力编号*/
       "weather_iconid": "1"  /*气象图标编号,对应weather_icon 0.gif*/
    },
    {
        "weaid": "1",
        "week": "星期一",
        "cityno": "beijing",
        "citynm": "北京",
        "cityid": "101010100",
        "uptime": "2015-07-20 01:50:00",
        "temperature": "22℃",
        "humidity": "99%",
        "aqi": "101",
        "weather": "晴",
        "weather_icon": "http://api.k780.com/upload/weather/d/0.gif",
        "wind": "东北风",
        "winp": "1级",
        "temp": "22",
        "weatid": "1",
        "windid": "13",
        "winpid": "201"
    },

2.异常或无数据
{
    success: "0",
    msgid: "...",
    msg: "..."
}
..............

示例代码

<?php
header("Content-Type:text/html;charset=UTF-8");
function nowapi_call($a_parm){
    if(!is_array($a_parm)){
        return false;
    }
    //combinations
    $a_parm['format']=empty($a_parm['format'])?'json':$a_parm['format'];
    $apiurl=empty($a_parm['apiurl'])?'http://api.k780.com/?':$a_parm['apiurl'].'/?';
    unset($a_parm['apiurl']);
    foreach($a_parm as $k=>$v){
        $apiurl.=$k.'='.$v.'&';
    }
    $apiurl=substr($apiurl,0,-1);
    if(!$callapi=file_get_contents($apiurl)){
        return false;
    }
    //format
    if($a_parm['format']=='base64'){
        $a_cdata=unserialize(base64_decode($callapi));
    }elseif($a_parm['format']=='json'){
        if(!$a_cdata=json_decode($callapi,true)){
            return false;
        }
    }else{
        return false;
    }
    //array
    if($a_cdata['success']!='1'){
        echo $a_cdata['msgid'].' '.$a_cdata['msg'];
        return false;
    }
    return $a_cdata['result'];
}

$nowapi_parm['app']='weather.history';
$nowapi_parm['weaId']='城市编号(1)';
$nowapi_parm['date']='查询的日期(2015-07-20)';
$nowapi_parm['appkey']='APPKEY';
$nowapi_parm['sign']='SIGN';
$nowapi_parm['format']='json';
$result=nowapi_call($nowapi_parm);
var_dump($result);
print_r($result);

#python
import json,urllib
from urllib import urlencode

url = 'http://api.k780.com'
params = {
  'app' : 'weather.history',
  'weaId' : '城市编号(1)',
  'date' : '查询的日期(2015-07-20)',
  'appkey' : 'APPKEY',
  'sign' : 'SIGN',
  'format' : 'json',
}
params = urlencode(params)

f = urllib.urlopen('%s?%s' % (url, params))
nowapi_call = f.read()
#print content
a_result = json.loads(nowapi_call)
if a_result:
  if a_result['success'] != '0':
    print a_result['result'];
  else:
    print a_result['msgid']+' '+a_result['msg']
else:
  print 'Request nowapi fail.';

import java.net.*;
import java.io.*;

public class test{
    public static void main(String args[]) throws Exception {
        URL u=new URL("http://api.k780.com/?app=weather.history&weaId=城市编号(1)&date=查询的日期(2015-07-20)&appkey=APPKEY&sign=SIGN&format=json");
        InputStream in=u.openStream();
        ByteArrayOutputStream out=new ByteArrayOutputStream();
        try {
            byte buf[]=new byte[1024];
            int read = 0;
            while ((read = in.read(buf)) > 0) {
                out.write(buf, 0, read);
            }
        }  finally {
            if (in != null) {
                in.close();
            }
        }
        byte b[]=out.toByteArray( );
        System.out.println(new String(b,"utf-8"));
    }
}

curl "http://api.k780.com/?app=weather.history&weaId=城市编号(1)&date=查询的日期(2015-07-20)&appkey=APPKEY&sign=SIGN&format=json"

包月套餐说明:

适合调用量比较平均的高频应用场景;有配额限制,超出配额会被暂停调用1小时,请留意购买足够配额.

规格套餐名称价格描述
1011000 次配额/每小时48 元/月-
1022000 次配额/每小时87 元/月省¥ 9 享9.8折
1033000 次配额/每小时130 元/月省¥ 14 享9.5折
1045000 次配额/每小时218 元/月省¥ 22 享9折
10510000 次配额/每小时439 元/月省¥ 41 享8.5折
10620000 次配额/每小时883 元/月省¥ 77 享8折
10730000 次配额/每小时1332 元/月省¥ 108 享7.5折
10840000 次配额/每小时1786 元/月省¥ 134 享7折
10950000 次配额/每小时2244 元/月省¥ 156 享6.5折
110100000 次配额/每小时4800 元/月-
立即开通

流量包套餐说明:

买多少用多少,多买有优惠,10元起买,适合大多数应用场景.

规格套餐名称价格描述
201流量包 15000 次10 元-
202流量包 157500 次100 元含 7500 次赠送流量
203流量包 318000 次200 元含 18000 次赠送流量
204流量包 481500 次300 元含 31500 次赠送流量
205流量包 817500 次500 元含 67500 次赠送流量
206流量包 1650000 次1000 元含 150000 次赠送流量
207流量包 3330000 次2000 元含 330000 次赠送流量
208流量包 5040000 次3000 元含 540000 次赠送流量
209流量包 8625000 次5000 元含 1125000 次赠送流量
210流量包 18000000 次10000 元含 3000000 次赠送流量
立即开通

免费试用套餐说明:

商用请选择付费套餐。 (系统繁忙或极端情况下,优先保证付费用户使用).

规格套餐名称价格描述
0免费套餐 200 次配额/每小时0 元/月可免费试用套餐3个月.
立即开通

客户服务

客服QQ: 1486133340 
QQ群8: 204490433

客服微信:

数据定制

定制接口、定制数据格式、采集等;联系请提供数据样式范本。1486133340 

意见反馈