tags:

views:

21588

answers:

14
+50  Q: 

Best Weather APIs?

What weather services have APIs? Out of the handful or so, which ones are easiest to tie into? Do they use "raw" HTTP requests or web services? Are there wrapper APIs for Python, .NET, Java, etc. Which have you had the best experience with?

+3  A: 

I know of 1 company that has used Weather.gov's in the past.

J.J.
+10  A: 

weather underground has xml api, i haven't used it, but judging by their website the service is quite useful in general.

SilentGhost
+1 weather underground is very useful. I work for a company with a strong interest in meteorology, we sometimes use their data.
MarkJ
google uses it too ;)
SilentGhost
I've used this, however it does time out quite frequently.
Frederico
+29  A: 

Update:

ProgrammableWeb is currently listing 13 weather APIs in their directory.

Bill the Lizard
The Google Weather API however is undocumented and unofficial so it may be turned off at some point. But it is certainly the fastest of the three to get started with.
jtyost2
Just as an update to this, the NWS has a RESTful API now, too: http://www.weather.gov/forecasts/xml/rest.php
notJim
Yahoo's looks very good, but is for non-commercial use..
Tom Brito
+2  A: 

yahoo provides weather rss feeds that work quite well:

http://developer.yahoo.com/weather/

Cal
+1  A: 

There is a project at Sourceforge called "PHP Weather" that makes use of METAR-data in a neat way.

Aputsiaq
+2  A: 

The Weather Channel also provides a web based API that allows searching by city or zip code. IIRC, it was pretty straightforward to use.

http://www.weather.com/services/xmloap.html

thorncp
the weather channel api requires a long and unfriendly user registration. They also try to trick you into accepting a lot of spammy offers. I was very disappointed with using this service.
Iggy
Agreed - then once you get through the spammy offers it limits your use extensively (no use of weather data on mobile websites or apps, for example)
GavinR
+3  A: 

PyMETAR is a python-based API that fetches and decodes METAR (text-based aviation weather) reports. I enjoy using it for my projects.

http://www.schwarzvogel.de/software-pymetar.shtml

METARs give temperature, dew point (humidity), wind, current conditions (rain, snow, fog, sunny), atmospheric pressure, etc.

Note that METARs do not include forecast information; TAFs are used for this. But PyMETAR does not handle TAFs.

Darren Griffith
+2  A: 

Accuweather have an API similar to HAMweather (i.e. XML files over HTTP or FTP) but again it's not free and you'll need to contact them for information/pricing

hopeless
+5  A: 

Not sure if it was just free services that you were after? Free data (except NOAA) usually means that you can only use it on free sites: no subscriptions or even Google ads! It's usually quite basic (although fine for general use). Commercial-use data is more expensive and the providers don't tend to be very open about pricing etc. I've also found several sites claiming to provide commercial weather data who don't reply to contact emails. Very few data providers provide or support any programming libraries and generally just provide an XML, CSV or plain text data file -- though third-party libraries exist.

HAMweather have a raw data service, although it's not free. They provide an XML file in response to a simple HTTP call. They also provide a database dump of place names (so you can build a browseable interface) or you can query by long/lat and they support international locations. There's a Ruby api available on github (third-party, I haven't used it) and I'm sure there are other examples out there (I can't post more than one link)

HAMweather also have a PHP-based library ("HAMweather 3") for retrieving / displaying weather forecasts (free, with some conditions). The website is quite lacking in information but ping them an email and they can provide examples, pricing, documentation etc (I'm only a user of their services).

hopeless
+1 good points about the commercial aspects.
Soviut
+2  A: 

FYI: The link for PHP Weather is http://phpweather.sourceforge.net/

meme
One issue with PHP Weather is the code there is very old (from 2004) as of writing and makes use of deprecated PHP abilities, such as $HTTP_GET_VARS.
jtyost2
+3  A: 

Found World Weather Online for weather api search on google

Den
I used it and i like it. To bad that the forecast is only on 5 days max(i need longer forecasts right now..)
Quamis
+1  A: 

I have used Yahoo too.

Diego
+2  A: 

I would suggest Wunderground It is free and the basic set of API that they provide is simple to use and developer friendly.

I have developed one Weather Forecast application based on their API for Android- http://code.google.com/p/cityweather/

Prasanta
Really? Did you discuss it with them first? http://wiki.wunderground.com/index.php/API_-_XML
funkybro
+2  A: 

Radarmatic has a JSON API for doppler radar base reflectivity data: http://radarmatic.com/api.html

roland