一、API介紹
中國天氣網API是由中國氣象局提供的服務,通過接口可以方便地獲取各地的天氣情況,包括實時天氣、近幾日的天氣信息和空氣質量等等。使用該API,可以方便地將這些數據嵌入到自己的網站或者應用中,提供更加詳實的天氣服務。
二、數據接口
該API提供的數據接口豐富多樣,可以滿足不同應用場景下的數據需求。
1.實時天氣數據接口
url: http://www.weather.com.cn/data/sk/[城市代碼].html
方法: GET
返回數據格式:
{
"weatherinfo":{
"city":"深圳",
"cityid":"101280601",
"temp":"26",
"WD":"南風",
"WS":"小於3級",
"SD":"75%",
"AP":"1006hPa",
"njd":"暫無實況",
"WSE":"<3",
"time":"17:55",
"sm":"2.1",
"isRadar":"1",
"Radar":"JC_RADAR_AZ9010_JB"
}
}
其中,城市代碼可以在API文檔中獲取,返回的實時天氣數據包括城市名稱、城市ID、溫度、風向、風力等信息。
2.近七日、24小時天氣預報
url: http://www.weather.com.cn/data/cityinfo/[城市代碼].html
方法: GET
返回數據格式:
{
"weatherinfo":{
"city":"深圳",
"cityid":"101280601",
"temp1":"26℃",
"temp2":"20℃",
"weather":"小雨",
"img1":"d7.gif",
"img2":"n7.gif",
"ptime":"18:00",
"date": [
{
"year": "2021",
"month": "6",
"day": "21",
"week": "星期一",
"sunrise": "05:46",
"sunset": "19:08",
"night": {
"weather": "陣雨",
"templow": "20℃",
"img": "n6.gif",
"winddirect": "西南風",
"windpower": "小於3級"
},
"day": {
"weather": "陣雨",
"temphigh": "26℃",
"img": "d6.gif",
"winddirect": "西南風",
"windpower": "小於3級"
}
},
...
]
}
}
返回的數據包括每日的日期、星期幾、日出日落時間、白天和晚上的天氣狀況、溫度、風向和風力等信息。
三、使用方法
使用該API,需要先進行註冊以獲取自己的API Key,只有攜帶API Key進行訪問才能獲取到數據。下面是一個獲取實時天氣信息的簡單示例:
const cityId = '101020100'; // 北京市的城市代碼
const apiKey = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; // 替換成你的API Key
const apiUrl = `http://www.weather.com.cn/data/sk/${cityId}.html?key=${apiKey}`;
fetch(apiUrl)
.then(response => response.json())
.then(data => {
console.log(data);
})
.catch(error => {
console.error(error);
});
首先定義城市代碼和API Key,然後構建API請求的URL,最後使用fetch方法異步獲取數據並進行處理。
四、API的限制和注意事項
使用該API需要注意以下幾個限制和注意事項:
1.免費/付費版本
中國天氣網API提供免費和付費版本,免費版本的每日訪問量有限制,超過後會被封禁;而付費版本則可以解除這個限制,更加靈活地使用API。
2.城市代碼
城市代碼需要從API的文檔中獲取,但是該API文檔中查詢城市代碼的功能不穩定,有時會返回錯誤的結果。因此,需要自己保留一份城市代碼的清單作為備用。
3.數據更新
該API提供的數據並不是實時更新的,而是每隔一段時間進行更新。因此,如果需要獲取實時的天氣數據,可以考慮使用其他API。
4.數據格式
該API返回的數據格式比較繁瑣,需要進行處理才能使用。但是,一旦熟悉了數據格式,就可以方便地獲取需要的信息。
五、總結
中國天氣網API是一個非常有用的天氣數據接口,可以方便地獲取天氣信息。在使用該API時需要注意文檔顯示有時會不穩定而返回錯誤的城市代碼,需要自己保留一份城市代碼的清單作為備用。同時,需要注意該API提供的數據並不是實時更新的,需要酌情考慮是否適合自己的應用場景。
原創文章,作者:XANGY,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/371385.html
微信掃一掃
支付寶掃一掃