Weather API
Tegenwoordig vind je op iedere website wel de weersverwachtingen terug van een land of plaats zoals bijvoorbeeld op Take a Trip en Het Laatste Nieuws. Er zijn verschillende soorten API's terug te vinden op het internet. De meeste hiervan maken gebruik van weerdata die men bekomt via The Weather Channel, (TWC). Ik ga in deze blogpost dus ook verder in op de API van TWC.
API key aanvragen
Om gebruik te kunnen maken van de API van TWC moet er zoals voor de meeste API's een API key aangevraagd worden. Dit kan voor TWC gebeuren op https://registration.weather.com/ursa/xmloap/step1. Hier even alle noodzakelijke gegevens invullen en even wat advertenties invullen of je kunt je pagina gewoon sluiten. Normaliter ontvang je dadelijk na registratie een mail met je Partner ID & License Key. Deze zijn noodzakelijk om de API te kunnen gebruiken.
Een API request maken
Een API request URL zal er als volgt uit zien, http://xoap.weather.com/weather/local/[CityID]?cc=[CC]&dayf=[DayCount]&link=xoap∏=xoap&par=[PartnerID]&key=[LicenseKey]&unit=[Unit] waarbij volgende parameters variabel kunnen zijn:
| Parameter | Omschrijving |
|---|---|
| CityId | Hier kun je een Amerikaanse postcode of een TWC CityId opgeven. Je kunt deze TWC CityId's terugvinden via http://www.weather.com/common/drilldown/world.html |
| CC [1] | Deze parameter wordt gebruikt om de huidige weersvoorspellingen op te halen. Hiervoor dien je een waarde (bv. 1) mee te geven. Wil je de huidige voorspelling niet, kun je deze parameter zonder problemen weglaten. |
| DayCount [2] | Er kunnen voorspellingen opgehaald worden voor de huidige en 4 volgende dagen, wil je geen voorspellingen, dan voeg je deze parameter simpelweg niet toe. |
| PartnerID | Deze ID heb je gekregen na registratie en is noodzakelijk om gebruik te kunnen maken van de API. |
| LicenseKey | Net zoals de PartnerID is ook de LicensKey nodig om een request te doen, ook deze vind je terug in de bevestigingsmail die je ontvangen. |
| Unit | Standaard staat deze op het imperiaal stelsel, maar kun je aanpassen naar het metrische door hier een m aan mee te geven |
[1][2] Wanneer beiden parameters niet meegegeven worden krijg je enkel de coördinaten en lokale tijd van de lokatie.
Wanneer je een request uitvoert krijg je een XML antwoord terug van TWC. Met een XML-parser kun je dan de gewenste data uitlezen en tonen op je website.
Voorbeeld API key aanvragen
Stel dat je de huidige weersomstandigheden van Kleine Brogel wilt weten . Dan ziet de request URL als volgt uit : http://xoap.weather.com/weather/local/BEXX0028?cc=1&link=xoap∏=xoap&par=[PartnerID]&key=[LicenseKey]&unit=m
BEXX0028 is dus bijgevolg de TWC CityID voor Kleine Brogel.
Wanneer we deze request uitvoeren krijgen we onderstaande als antwoord terug van TWC
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- This document is intended only for use by authorized licensees of The -->
<!-- Weather Channel. Unauthorized use is prohibited. Copyright 1995-2009, -->
<!-- The Weather Channel Interactive, Inc. All Rights Reserved. -->
<weather ver="2.0">
<head>
<locale>en_US</locale>
<form>MEDIUM</form>
<ut>C</ut>
<ud>km</ud>
<us>km/h</us>
<up>mb</up>
<ur>mm</ur>
</head>
<loc id="BEXX0028">
<dnam>Kleine Brogel, Belgium</dnam>
<tm>4:34 PM</tm>
<lat>51.17</lat>
<lon>5.45</lon>
<sunr>7:57 AM</sunr>
<suns>6:52 PM</suns>
<zone>2</zone>
</loc>
<cc>
<lsup>10/19/09 2:55 PM Local Time</lsup>
<obst>Kleine Brogel, BELGIUM</obst>
<tmp>13</tmp>
<flik>13</flik>
<t>Mostly Cloudy</t>
<icon>28</icon>
<bar>
<r>1016.9</r>
<d>falling</d>
</bar>
<wind>
<s>11</s>
<gust>N/A</gust>
<d>190</d>
<t>S</t>
</wind>
<hmid>47</hmid>
<vis>10.0</vis>
<uv>
<i>1</i>
<t>Low</t>
</uv>
<dewp>2</dewp>
<moon>
<icon>1</icon>
<t>Waxing Crescent</t>
</moon>
</cc>
</weather>
11
Hieronder kun je kort alle noodzakelijke elementen met hun omschrijving terugvinden
| Element | Omschrijving |
|---|---|
| loc | |
| dname | naam van plaats |
| tm | lokale tijd |
| lat | breedtegraad locatie |
| lon | lengtegraad locatie |
| sunr | lokale zonsopgang |
| suns | lokale zonsondergang |
| zone | lokale tijdszone |
| cc | |
| lsup | laatste update van het weerstation |
| obst | locatie weerstation |
| tmp | huidige temperatuur in °C |
| flik | huidige gevoelstemperatuur in °C |
| t | tekstuele verwachting (Overwegend bewolkt) |
| icon |
icoontje dat je kunt tonen op website bv. |
| bar | de luchtdruk uitgedrukt in millibar (r) en de tekstuele omschrijving (d) |
| wind | windsnelheid (s); windrichting in °C (d); windrichting (t) |
| hmid | vochtigheidsgraad |
| vis | de zichtbaarheid in km |
| uv | uv-index (i) en uv-graad (t) |
| dewp | het dauwpunt in °C |
| moon | maan icoon (icon) en omschrijving (t) |
Alle info omtrent TWC en de Weather XML Data Feed kun je terugvinden op weather.com



11 reacties tot nu toe
Steensels Peter zei 2 jaar geleden:
Serge Peeters zei 2 jaar geleden:
Dieter zei 2 jaar geleden:
Serge Peeters zei 2 jaar geleden:
Zomerbrochure zei 2 jaar geleden:
Dieter zei 2 jaar geleden:
DriesM zei 2 jaar geleden:
vb: nl-BE of iets dergelijks, nu staat alles standaard in het engels.
Dieter zei 2 jaar geleden:
DriesM zei 2 jaar geleden:
Dieter zei 2 jaar geleden:
DriesM zei 2 jaar geleden:
tnx, dit helpt een mens wel vooruit.