Skip to content

API to retrieve data from the Länderübergreifendes Hochwasser Portal (LHP)

License

Notifications You must be signed in to change notification settings

stephan192/lhpapi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lhpapi

Python client to retrieve data provided by the 16 German federal state flood information centers jointly known as Länderübergreifendes Hochwasser Portal (LHP)

Install

pip install lhpapi

Usage

Quickstart example

Get values for the Isar in Munich

from lhpapi import HochwasserPortalAPI, LHPError

try:
    api = HochwasserPortalAPI("BY_16005701")
    
    print(f"ident:\t\t{api.ident}")
    print(f"name:\t\t{api.name}")
    print(f"url:\t\t{api.url}")
    print(f"hint:\t\t{api.hint}")
    print(f"level:\t\t{api.level} cm")
    print(f"stage:\t\t{api.stage}")
    print(f"flow:\t\t{api.flow} m³/s")
    print(f"last_update:\t{api.last_update}")
except LHPError as err:
    print("Something went wrong!")

Result

ident:          BY_16005701
name:           München / Isar
url:            https://www.hnd.bayern.de/pegel/isar/muenchen-16005701
hint:           None
level:          120.0 cm
stage:          0
flow:           73.6 m³/s
last_update:    2024-03-01 21:15:00+00:00

Detailed description

Methods:

  • __init__(ident: str)
    Create a new LHP API class instance

    The ident must be one of the stream gauges (Pegel) listed in pegel.md. Some stream gauges are listed twice or even more often in pegel.md, because they are listed on more than one state portal. Select the one of your choice.

    Method update() is automatically called at the end of a successfull init.

  • update()
    Update data by querying the LHP servers and parsing the result

    Function should be called regularly, e.g. every 15minutes, to update the data stored in the class attributes.

Attributes (read only):

  • ident : str
    The identifier of the selected stream gauge

  • name : str
    The name of the selected stream gauge

  • url : str
    An URL pointing to additional information about the selected stream gauge

  • hint : str
    A hint reported for the the selected stream gauge

  • level : float
    The actual water level (in German Pegelstand or colloquially Wasserstand). A value in centimetres, starting from 0 cm = Pegelnullpunktshöhe.

  • stage : int
    The actual warning stage (in German depending on ferderal state e.g. Meldestufe in Bavaria, Alarmstufe in Brandenburg). A number between 0 (=no flood) and 4 (= very large flood).

  • flow : float
    The actual flow rate (in German Abfluss or Durchfluss). A value in m³/s.

  • last_update : datetime
    A datetime object representing the last update

List of supported values

  • ✔️ Value mostly available. Check individual state portal because not all stream gauges report all values, values not avaiable are reported as None.
  • ❌ Value generally yet not available.
Prefix State Level Stage Flow Portal
BB Brandenburg ✔️ ✔️ ✔️ Pegelportal Brandenburg
BE Berlin ✔️ ✔️ Wasserportal Berlin
BW Baden-Württemberg ✔️ ✔️ ✔️ Hochwasservorhersagezentrale Baden-Württemberg
BY Bayern ✔️ ✔️ ✔️ Hochwassernachrichtendienst Bayern
HB Bremen ✔️ ✔️ Pegelstände Bremen
HE Hessen ✔️ ✔️ ✔️ Hochwasserportal Hessen
HH Hamburg ✔️ ✔️ Warndienst Binnenhochwasser Hamburg
MV Mecklenburg-Vorpommern ✔️ ✔️ ✔️ Pegelportal Mecklenburg-Vorpommern
NI Niedersachsen ✔️ ✔️ ✔️ NLWKN Pegelonline
NW Nordrhein-Westfalen ✔️ ✔️ Hochwassermeldedienst NRW
RP Rheinland-Pfalz ✔️ ✔️ ✔️ Hochwasservorhersagedienst - Landesamt für Umwelt Rheinland-Pfalz
SH Schleswig-Holstein ✔️ ✔️ ✔️ Hochwasser-Sturmflut-Information Schleswig-Holstein
SL Saarland ✔️ ✔️ Pegel Saarland
SN Sachsen ✔️ ✔️ ✔️ Landeshochwasserzentrum Sachsen
ST Sachsen-Anhalt ✔️ ✔️ ✔️ Landesportal Sachsen-Anhalt
TH Thüringen ✔️ ✔️ ✔️ Hochwassernachrichtenzentrale Thüringen

About

API to retrieve data from the Länderübergreifendes Hochwasser Portal (LHP)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages