1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
# coding: utf-8
# -------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
# --------------------------------------------------------------------------
"""
FILE: get_hourly_forecast_async.py
DESCRIPTION:
This API returns a detailed hourly weather forecast for up to 24 hours or a daily forecast for up to 10 days.
USAGE:
python get_hourly_forecast_async.py
Set the environment variables with your own values before running the sample:
- AZURE_SUBSCRIPTION_KEY - your subscription key
"""
import asyncio
import os
import json
from azure.core.exceptions import HttpResponseError
subscription_key = os.getenv("AZURE_SUBSCRIPTION_KEY", "your subscription key")
async def get_hourly_forecast():
from azure.core.credentials import AzureKeyCredential
from azure.maps.weather.aio import MapsWeatherClient
maps_weather_client = MapsWeatherClient(credential=AzureKeyCredential(subscription_key))
try:
async with maps_weather_client:
result = await maps_weather_client.get_hourly_forecast(coordinates=[25.0338053, 121.5640089])
print(json.dumps(result, indent=4))
except HttpResponseError as exception:
if exception.error is not None:
print(f"Error Code: {exception.error.code}")
print(f"Message: {exception.error.message}")
if __name__ == "__main__":
asyncio.run(get_hourly_forecast())
|