2010-03-17 44 views
3

我試圖獲得當前的天氣給定的郵政編碼或一組經度/緯度座標。看起來,做這件事的最佳實踐(以及NOAA是如何做到的)是獲取氣象站的XML提要。如何通過網絡服務獲取當前天氣

例子: http://www.weather.gov/xml/current_obs/KEDW.xml

唯一的問題是,諾阿並沒有提供一個很好的方式找到一個給定的郵政編碼或座標最近的氣象站,我沒有看到任何託管Web服務,在那裏,意志提供這種映射。

有沒有人知道任何網絡服務獲得最近的氣象站給定的郵政編碼或座標輸入?如果沒有,有沒有人有任何很好的解決方案,以提供類似的信息,NOAA做,但需要在郵政編碼或座標?

回答

3

有很多天氣API會根據郵政編碼查找天氣,或找到最近的一個郵政編碼。見this question

國家氣象局有一個REST API。 CTRL + F(郵編):

一個或多個郵政編碼的彙總數據:返回一個或多個郵政編碼(50美國和波多黎各)的DWML編碼的NDFD數據。

Here is a sample request


我不知道如果一個人目前的情況。如果沒有,您可以使用Wunderground API。首先,您使用GeolookupXML查找基於城市的附近氣象站(請參閱樣本輸出中的nearby_weather_stations元素),然後您可以使用WXCurrentObXML獲取某個氣象站的條件。

+0

感謝您的第一個鏈接。我想我將使用一些NWS REST調用來獲取預測並緩存該數據。就目前而言,我將動態從Wunderground的API中獲取氣象站標識符,並根據需要將它們存儲在我們的數據庫中,並基於城市,州,國家,ZipCode或緯/長對,我可以查找氣象站標識符並呼叫Wunderground或NOAA傳入標識符以快速調用以獲取我需要的當前數據。 – Brandon

0

我試過你的鏈接,而不是城市,街道輸入我的郵政編碼。它返回了正確的位置和天氣報告。這可能只是一個記錄不完整的API,而用5位數的zip替換的城市/街道參數確實會做你想做的事情。

2

它花了一些搜索,但NOAA維護所有METAR氣象站的列表,以及它們的緯度和經度座標,以及直接鏈接到他們的RSS和XML提要URL。此列表以XML存儲在此處:http://www.weather.gov/xml/current_obs/index.xml

您可以使用Google或Yahoo的地理編碼API來查找地名(城市,地址,郵編等)的緯度/經度,然後搜索氣象站列表最近的METAR車站到指定的位置。