中央气象台天气预报api调用
今天突然要做一個天氣預報的應用,上網搜了一下,發現可用的api其實挺多的,包括谷歌、雅虎、中央氣象臺等等。
谷歌的天氣預報的優點在于可以直接獲取支持查詢天氣的國家和城市。并且可以預報4天天氣,支持經緯度查詢天氣(這個可以利用GPS做應用)。缺點也是驚人的:支持的中國城市比較少。
雅虎的天氣預報返回的是xml數據,我需要的是json數據,所以也沒什么好感。
最終還是決定使用中央氣象臺的。中央喔,好像很牛B的樣子。
該api獲取天氣的接口如下:
http://www.weather.com.cn/data/sk/101281601.html
http://www.weather.com.cn/data/cityinfo/101281601.html
http://m.weather.com.cn/data/101281601.html
3種返回的數據稍微有些不同,至于使用哪一種,看個人喜歡吧~~
值得說明的是101281601是城市在中央氣象臺數據庫中城市碼,獲取的方法有些麻煩,有以下幾個步驟:
1. 通過http://m.weather.com.cn/data5/city.xml 獲取省份列表;
2. 通過http://m.weather.com.cn/data5/city28.xml 獲取該省份的城市列表,其中28為廣東省代號,1中所返回的;
3. 通過http://m.weather.com.cn/data5/city2816.xml 獲取該城市的區列表,其中2816為東莞市代號,2中所返回的;
4. 通過http://m.weather.com.cn/data5/city281601.xml 獲取最后的城市碼,其中281601為3中返回;
5. 通過 api獲取天氣信息;
值得注意的使,上述的這些列表信息雖然文件后綴名未xml,但是里面只是一條字符串,不符合xml的格式,所以,直接用瀏覽器打開,會顯示xml解釋出錯。。。。
總結
以上是生活随笔為你收集整理的中央气象台天气预报api调用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python11_Python11,文件
- 下一篇: 将安全信息应用到以下对象时发生错误 拒绝