天气预报(5-7天)

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

说明

因历史遗留问题,建议使用 天气数据(整合版) 接口

更新频率: 每小时更新一次
详细说明:
  可以通过任意一种方式调取数据:本站城市编号,城市名称,气象编号,城市拼音,ip地址.

更新日志:
1.2015-05-13 weaid参数可指定IP地址(系统会分析该IP所在城市,并提取该城市天气数据);比如:weaid=202.104.153.201 该IP归属地为“中山市”,系统会提取中山市的天气数据。
--

测试示例: https://sapi.k780.com/?app=weather.future&weaId=1&&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json (示例中sign会不定期调整)

调用方式

Get/Post

请求url

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

请求参数

参数 类型 是否必须 备注
app string 接口 此处应为:weather.future
weaId number (推荐) 通过weaId查询,例: 1
城市列表城市列表中weaId
(参数weaId,cityId,cityNm,cityIp,wgs84ll中取1个作为查询条件)
cityId string (推荐) 城市编号查询,例: 101010100
城市列表城市列表中cityId
cityNm string 通过中文城市名查询,例: 北京
城市列表城市列表中cityNm (带入前urlencode)
cityIp string 通过ip地址查询,例: 202.104.153.201 (不推荐)
wgs84ll string 通过经纬度坐标查询,例:116.442708,39.917344
(付费用户可用)
appkey string 使用API的唯一凭证 获取
sign string md5后的32位密文,登陆用. 获取
format {json|xml} 返回数据格式
jsoncallback string js跨域使用jsonp时可使用此参数

Json请求示例

http://api.k780.com/?app=weather.future&weaId=1&appkey=APPKEY&sign=SIGN&format=json

Json返回示例

返回值过长,部分省略
{
  "success": "1",
  "result": [{
    "weaid": "1",
    "days": "2014-07-30",
    "week": "星期三",
    "cityno": "beijing",
    "citynm": "北京",
    "cityid": "101010100",
    "temperature": "23℃/11℃", /*白天 夜间温度*/
    "humidity": "0%/0%", /*湿度,后期气像局未提供,如有需要可使用weather.today接口 */
    "weather": "多云转晴",
    "weather_icon": "http://api.k780.com/upload/weather/d/1.gif", /*气象图标(白天) 全部气象图标下载*/
    "weather_icon1": "http://api.k780.com/upload/weather/d/0.gif", /*气象图标(夜间) 全部气象图标下载*/
    "wind": "微风", /*风向*/
    "winp": "小于3级", /*风力*/
    "temp_high": "31", /*白天温度*/
    "temp_low": "24", /*夜间温度*/
    "humi_high": "0", /*湿度栏位已不再更新*/
    "humi_low": "0",/*湿度栏位已不再更新*/
    "weatid": "2", /*白天天气ID,可对照weather.wtype接口中weaid*/
    "weatid1": "1", /*夜间天气ID,可对照weather.wtype接口中weaid*/
    "windid": "1", /*风向ID(暂无对照表)*/
    "winpid": "2" /*风力ID(暂无对照表)*/
    "weather_iconid": "1", /*气象图标编号(白天),对应weather_icon 1.gif*/
    "weather_iconid1": "0" /*气象图标编号(夜间),对应weather_icon1 0.gif*/
 },
......

示例代码

<?php
header("Content-Type:text/html;charset=UTF-8");
function nowapiRequest($postData,&$errMsg=''){
    $apiUrl     = 'https://sapi.k780.com/';
    $useContext = stream_context_create(array(
        'http' => array(
            'method'  => 'POST',
            'header'  => 'Content-type:application/x-www-form-urlencoded',
            'content' => http_build_query($postData)
        )
    ));
    if(!$resData=file_get_contents($apiUrl,false,$useContext)){
        $errMsg = 'ERR_CONNECT';
        return false;
    }
    if(!$arrData=json_decode($resData,true)){
        $errMsg = 'ERR_DECODE';
        return false;
    }
    if($arrData['success']!=1){
        $errMsg = $arrData['msgid'].' '.$arrData['msg'];
        return false;
    }
    return $arrData['result'];
}

$postData['app'] = 'weather.future';
$postData['weaId'] = '1';
$postData['appkey'] = '10003';//替换成自己的appkey
$postData['sign'] = 'b59bc3ef6191eb9f747dd4e83c99f2a4';//替换成自己的sign
$postData['format'] = 'json';
$result = nowapiRequest($postData,$errMsg);
print_r($errMsg);
print_r($result);

#python
import json,urllib
from urllib import urlencode

url = 'http://api.k780.com'
params = {
  'app' : 'weather.future',
  'weaId' : '1',
  '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.future&weaId=1&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.future&weaId=1&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json"

流量包套餐说明:

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

规格套餐名称价格描述
201流量包 1000 次10 元约 0.01 元/次
202流量包 12500 次100 元约 0.008 元/次
203流量包 33333 次200 元约 0.006 元/次
205流量包 125000 次500 元约 0.004 元/次
206流量包 500000 次1000 元约 0.002 元/次
208流量包 3000000 次3000 元约 0.001 元/次
209流量包 5555555 次5000 元约 0.0009 元/次
210流量包 12500000 次10000 元约 0.0008 元/次
立即开通

包月套餐说明:

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

规格套餐名称价格描述
1011000 次配额/每小时49 元/月-
1022000 次配额/每小时96 元/月
1033000 次配额/每小时130 元/月
1045000 次配额/每小时218 元/月
10510000 次配额/每小时439 元/月
10620000 次配额/每小时883 元/月
10730000 次配额/每小时1332 元/月
10840000 次配额/每小时1786 元/月
10950000 次配额/每小时2244 元/月
110100000 次配额/每小时4800 元/月-
立即开通

免费试用套餐说明:

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

规格套餐名称价格描述
0试用套餐 50 次/每小时0 元/月可免费试用3个月,延长试用或次数不够可联系客服增加
立即开通

客户服务

客服QQ: 1486133340 
QQ群8: 204490433

客服微信:

数据定制

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

意见反馈