Skip to main content

Python wrapper for IMGW-PIB API.

Project description

GitHub Release PyPI PyPI - Downloads PayPal_Me

imgw-pib

Python async wrapper for IMGW-PIB API.

Installation

You can install the library with pip:

pip install imgw-pib

How to use the library

"""Example of usage IMGW-PIB."""

import asyncio
import logging

from aiohttp import ClientError, ClientSession

from imgw_pib import ApiError, ImgwPib

logging.basicConfig(level=logging.DEBUG)

WEATHER_STATION_ID = "12200"
HYDROLOGICAL_STATION_ID = "154190050"


async def main() -> None:
    """Run main function."""
    async with ClientSession() as websession:
        try:
            imgwpib = await ImgwPib.create(
                websession,
                weather_station_id=WEATHER_STATION_ID,
                hydrological_station_id=HYDROLOGICAL_STATION_ID,
            )
            weather_data = await imgwpib.get_weather_data()
            hydrological_data = await imgwpib.get_hydrological_data()
        except ApiError as error:
            print(f"API Error: {error.status}")
        except ClientError as error:
            print(f"ClientError: {error}")
        except TimeoutError as error:
            print(f"TimeoutError: {error}")
        else:
            print(f"Weather stations: {imgwpib.weather_stations}")
            print(f"Weather data: {weather_data}")
            print(f"Hydrological stations: {imgwpib.hydrological_stations}")
            print(f"Hydrological data: {hydrological_data}")


loop = asyncio.new_event_loop()
loop.run_until_complete(main())
loop.close()

Error handling

The library raises ApiError when the IMGW-PIB API returns an error, ClientError for network-related errors, and TimeoutError when a request times out.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

imgw_pib-1.0.5.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

imgw_pib-1.0.5-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file imgw_pib-1.0.5.tar.gz.

File metadata

  • Download URL: imgw_pib-1.0.5.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for imgw_pib-1.0.5.tar.gz
Algorithm Hash digest
SHA256 92a5a592e765ed20278e38e2997fc597dac79da18261027fc264e3067f71e5eb
MD5 8f359b187cd2d75e52da348d052e7adc
BLAKE2b-256 e7275fcdbb3c819e7db1f5197df61df7a34c0405d34e8f7a6fcbd910bef331c7

See more details on using hashes here.

File details

Details for the file imgw_pib-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: imgw_pib-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for imgw_pib-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3589b4814b210ee998dc68686d384378175f28489456dc49aaa8410ef611064d
MD5 12d20401b24fd0c770eb039e58775fd4
BLAKE2b-256 508741c4cac43575be2c0d0a4609fbb3f372e332a2bcb631c4b4c4c0893e60ea

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page