A python warpper for retrieving Hong Kong SAR local weather from Hong Kong Observatory Open Data API. Please refer to the Official Documentation for request parameters and response details. Official API Documentation
hko.HKO(session)
Manage and perform requests
Return: hko.HKO class
Parameter | Optional (default value) | Type | Description |
---|---|---|---|
session | no | ClientSession | see aiohttp |
hko.HKO.weather(dataType, lang)
Retrieve weather data from Weather Information API
Return: dictionary
Parameter | Optional (default value) | Type | Description |
---|---|---|---|
dataType | no | string | type of data requested |
lang | yes (en) | string | language used in response |
hko.HKO.earthquake(dataType, lang)
Retrieve weather data from Earthquake Information API
Return: dictionary
Parameter | Optional (default value) | Type | Description |
---|---|---|---|
dataType | no | string | type of data requested |
lang | yes (en) | string | language used in response |
hko.HKO.openData(dataType, lang)
Retrieve weather data from Earthquake Information API
Return: dictionary
Parameter | Optional (default value) | Type | Description |
---|---|---|---|
dataType | no | string | type of data requested |
lang | yes (en) | string | language used in response |
station | - | string | refer to Official API Documentation |
year | - | string | refer to Official API Documentation |
month | - | string | refer to Official API Documentation |
day | - | string | refer to Official API Documentation |
hour | - | string | refer to Official API Documentation |
Get and print local weather forcast general situation in English
from hko import HKO, HKOError
import asyncio
from aiohttp import ClientSession
from aiohttp import ClientConnectorError
async def main():
async with ClientSession() as session:
try:
hko = HKO(session)
fnd = await hko.weather(dataType="fnd")
print(fnd["generalSituation"])
except HKOError as error:
print(error)
asyncio.run(main())