Wetter API-Key?

3 Antworten

Wie der Name verrät, ist ein API-Key ein Schlüssel, und zu jedem Schlüssel gehört auch ein Schloss. Oder andersrum gesagt: Ein Schlüssel ist ziemlich nutzlos, wenn es kein Schloss dazu gibt.

Von dem her ist die Frage nicht, wo du einen API-Key herbekommst, sondern erstmal, welche Wetter APIs es gibt und wie deren Nutzungsbedingungen und ggf. Kosten aussehen.

Denn wenn eine API einen Key zur Benutzung verlangt, dann bedeutet das, dass der Anbieter nicht möchte, dass jeder einfach diese API nutzt. Es gibt öffentliche APIs, die ohne Key abgerufen werden können. Wenn ein Key verlangt wird, dann heißt das in der Regel, dass der Anbieter zumindest will, dass man sich registriert, aber wie gesagt kann die Nutzung der API auch mit Kosten verbunden sein.

Ein API-Key ist wie ein Passwort, und jeder Nutzer der API bekommt normalerweise einen eigenen Key, den der Anbieter dann auch bei Bedarf wieder deaktivieren kann (z.B. wenn bei kostenpflichtigen APIs der Vertrag gekündigt wurde).

Daher findest du auch nicht so einfach API-Keys im Internet.

Der erste Schritt wäre also erstmal, eine geeignete API zu finden. Ob du für die einen Key, oder z.B. einen oAuth-Flow brauchst, findest du dann in der Dokumentation zu dieser API.

Teilweise gibt es auch mehrere Optionen, da kommt es dann darauf an, wie genau deine Anwendung funktionieren soll und welche Technologien diese einsetzt.

Von welchem Anbieter soll der API Key sein? Grundsätzlich gibt es die Wetterdaten vom DWD alle öffentlich. Da muss man sich etwas einarbeiten, aber dann hat man auf sehr viele Daten Zugriff: https://opendata.dwd.de/weather/local_forecasts/mos/MOSMIX_L/

Woher ich das weiß:Berufserfahrung – IT Administrator und Webdesigner

Cedrik529 
Beitragsersteller
 01.11.2024, 21:19

Ich weiß darüber leider sehr wenig. Um genau zu sein höre ich davon zum ersten mal. Könnten Sie vielleicht den API Key von Köln suchen? Wäre sehr lieb :)

EmWald  01.11.2024, 23:31
@Cedrik529

Wie gesagt es gibt keine API, sondern Daten, die auf einem Server liegen. Mit denen kannst du nur etwas anfangen, wenn du dich da richtig mit beschäftigst. Wenn du sagst, was du damit vorhast, kann dir hier der Weg gewiesen werden, womit du dich beschäftigen könntest, um weiter zu kommen.

Für welchen Wetterdienst?

API-Keys sind lediglich dein Zugang für einen bezahlten Service und bezeichnet keinen Ort!

Es geht auch ohne API-Keys, wenn man Dienste in Anspruch nimmt , welche keinen benötigen.

Ich verwende gern https://open-meteo.com/

Allerdings benötigt dies statt Adressdaten eien Geolocation (Länge/Breite)

Diese kann man jedoch für so ziemlich jede Adresse ohne großen aufwand über das Debubgnterface von Openstreetmap abrufen. https://nominatim.openstreetmap.org/ui/about.html

hier ein kleines Powershellscript, welches das aktuelle Wetter für meine Stadt abruft.

#Geokoordinaten für  einen  Ort ermitteln
#Was  immer  an Adressdaten verfügbar  ist
$SearchStrings = @(
    'Leipzig'
    'Grünau'
    'Mitte'
)


$queryStrings = $SearchStrings|%{[uri]::EscapeDataString($_)}
$Query = $queryStrings -join '+'
Write-Host "QueryString: $Query" -fo  green
$ProgressPreference = 'SilentlyContinue'    # Consolefortschrittsbalken   aus
#geodaten  für "Adresse"  abfragen
$GeoCoords=(Invoke-WebRequest "https://nominatim.openstreetmap.org/search?q=$Query&format=json&addressdetails=0").content | ConvertFrom-Json
$GeoCoords #mal anshauen


#https://open-meteo.com/
#querystring  für Wetterapi basteln
$WeatherQuery=@(
    'latitude={0}'-f $GeoCoords.lat
    'longitude={0}'-f $GeoCoords.lon
    'current=temperature_2m,relative_humidity_2m,precipitation,rain,showers,snowfall,weather_code,cloud_cover,wind_speed_10m,wind_direction_10m'
)-join '&'
$WeatherQuery
#Wetterdaten  für  ermittelten Geo-Tag abrufen
$html = Invoke-WebRequest "https://api.open-meteo.com/v1/forecast?$WeatherQuery"
$Weatherobject = $html.Content|ConvertFrom-Json
$Weatherobject  #mal  angucken
$Weatherobject.Current
pause

Achtung:

nominatim.openstreetmap.org/search kann auch mehrere Treffer liefern. Dann meutert natürlich die Bastelei der Abfrage für den Wetterdienst.

Ich habe eine Selektion weggelassen um die Demo nicht unnötig kompliziert zu machen.

(ergo vorher sicherstellen das die Query nur eine Geocoordinate liefert oder eine aktive Auswahl statfinden kann)

Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren