Poland Fetcher

Fetcher for Polish river gauge data from IMGW.

class rivretrieve.poland.PolandFetcher[source]

Bases: RiverDataFetcher

Fetches river gauge data from Poland’s Institute of Meteorology and Water Management (IMGW).

Data Source: IMGW Public Data (https://danepubliczne.imgw.pl/) This fetcher downloads all historical data and caches it in a Zarr store in rivretrieve/data/poland.zarr on first use.

Supported Variables:
  • 'discharge_daily_mean' (m³/s)

  • 'stage_daily_mean' (m)

  • 'water-temperature_daily_mean' (°C)

static get_available_variables() tuple[str, ...][source]

Returns a tuple of supported variables.

static get_cached_metadata() DataFrame[source]

Retrieves a DataFrame of available Polish gauge IDs and metadata.

This method loads the metadata from a cached CSV file located in the rivretrieve/cached_site_data/ directory.

Returns:

A DataFrame indexed by gauge_id, containing site metadata.

Return type:

pd.DataFrame

get_data(gauge_id: str, variable: str, start_date: str | None = None, end_date: str | None = None) DataFrame[source]

Fetches and parses time series data for a specific gauge and variable.

This method retrieves the requested data from the provider’s API or data source, parses it, and returns it in a standardized pandas DataFrame format.

Parameters:
  • gauge_id – The site-specific identifier for the gauge.

  • variable – The variable to fetch. Must be one of the strings listed in the fetcher’s get_available_variables() output. These are typically defined in rivretrieve.constants.

  • start_date – Optional start date for the data retrieval in ‘YYYY-MM-DD’ format. If None, data is fetched from the earliest available date.

  • end_date – Optional end date for the data retrieval in ‘YYYY-MM-DD’ format. If None, data is fetched up to the latest available date.

Returns:

A pandas DataFrame indexed by datetime objects ('time') with a single column named after the requested variable. The DataFrame will be empty if no data is found for the given parameters.

Return type:

pd.DataFrame

Raises:
  • ValueError – If the requested variable is not supported by this fetcher.

  • requests.exceptions.RequestException – If a network error occurs during data download.

  • Exception – For other unexpected errors during data fetching or parsing.

static get_metadata()[source]

Downloads the metadata CSV file from IMGW and converts it into a pandas DataFrame.

Data is fetched from: https://danepubliczne.imgw.pl/data/dane_pomiarowo_obserwacyjne/dane_hydrologiczne/lista_stacji_hydro.csv

Returns:

A DataFrame indexed by gauge_id, containing site metadata.

Return type:

pd.DataFrame