Skip to main content

PyPI PyPI - Python Version

Description

MeteoGalicia-API implements an interface to the MeteoGalicia Rest web services.

Documentation about MeteoGalicia web service is available at https://www.meteogalicia.gal/web/RSS/rssIndex.action?request_locale=es.

This package has been developed to be used with homeassistant-meteogalicia integration for Home-Assistant

Disclaimer

This software is provided without warranty, and should therefore not be used where it may endanger life, financial stakes, or cause discomfort and inconvenience to others. Is also licensed under the GNU Public Licence version 3

Usage

Example:

from meteogalicia_api.interface import MeteoGalicia
meteogalicia = MeteoGalicia()
meteogalicia.get_forecast_data("32054")
meteogalicia.get_observation_data("15023")

Custom session and timeout:

import requests
from meteogalicia_api.interface import MeteoGalicia

session = requests.Session()
meteogalicia = MeteoGalicia(session=session, timeout=10)
meteogalicia.get_forecast_data("32054")

Town hall or city data methods:

meteogalicia.get_forecast_data("32054")
meteogalicia.get_hourly_forecast_data("32054")
meteogalicia.get_medium_term_forecast_data("32054")
meteogalicia.get_warnings_data("32054")
meteogalicia.get_max_warning_levels_data("32054")
meteogalicia.get_observation_data("15023")

Parameter id's are available at https://www.meteogalicia.gal/datosred/infoweb/meteo/docs/rss/JSON_Pred_Concello_es.pdf

Hourly and medium term forecasts:

Both methods return the original JSON dictionary, including the forecast wrapper. They return None if the request fails, the forecast container is missing or is not an object, or its prediction list is missing, empty or is not a list. Individual records are returned unchanged; the client does not validate every field.

Method Prediction list in the returned dictionary Main fields
get_hourly_forecast_data(id) data["predHoraria"]["listaPredDiaHoraria"] Each day contains dia and listaPredHora; each hour contains dataPredicion, tMedia, icoCeo and icoVento.
get_medium_term_forecast_data(id) data["predMPrazo"]["listaPredDiaMPrazo"] Each day contains dataPredicion, dia, tMin, tMax, sky condition alternatives and their probabilities.
  • Hourly dataPredicion values use local time in Galicia (Europe/Madrid) and contain no UTC offset. The client does not convert them to UTC. Consumers must account for the local time zone and daylight saving changes.
  • MeteoGalicia uses -9999 for unavailable weather values. The client preserves this sentinel; consumers should treat it as missing data, not as a temperature, probability or valid weather code.
  • Medium term icoCeo1, icoCeo2 and icoCeo3 are possible sky conditions with corresponding probIcoCeo1, probIcoCeo2 and probIcoCeo3 probabilities. They are not morning, afternoon and night forecasts. Use the probabilities when choosing a representative condition.
  • The medium term forecast starts after the short term forecast. The number of days and hours varies with availability; combine daily forecasts using their dates rather than assuming fixed list lengths.
data = meteogalicia.get_hourly_forecast_data("15030")
if data is not None:
    for day in data["predHoraria"]["listaPredDiaHoraria"]:
        for hour in day["listaPredHora"]:
            temperature = hour.get("tMedia")
            if temperature is not None and temperature != -9999:
                print(hour["dataPredicion"], temperature)

Official response schemas and weather codes: hourly forecast and medium term forecast.

Warning methods:

# Detailed warnings: level, alert type and validity period.
warnings = meteogalicia.get_warnings_data("15030", day=-1)

# MeteoGalicia's own maximum warning level summary.
levels = meteogalicia.get_max_warning_levels_data("15030", day=-1)

The optional day argument accepts 0 (today), 1 (tomorrow), 2 (the day after tomorrow) and -1 (all available days). Both methods return the original MeteoGalicia JSON dictionary. In both endpoints, including requests for a single day, listaDiaConcellos contains day objects with a dia field and either listaAvisosConcellos or listaNiveisMaximos. Select days by dia, not their position in the list.

if warnings is not None:
    for daily in warnings["listaDiaConcellos"]:
        print(daily["dia"], daily["listaAvisosConcellos"])

An empty daily list is a valid response: for detailed warnings it means there are no warnings for that day. Malformed responses and request failures return None.

  • get_warnings_data() uses jsonAvisosConcellos.action and exposes individual warnings, including idNivel, dataAviso, dataIni, dataFin, idTipoAlerta, tipoalerta_gl and tipoalerta_es.
  • get_max_warning_levels_data() uses jsonConcellosNivelMax.action and exposes MeteoGalicia's nivelMax summary (0 normal, 1 yellow, 2 orange, 3 red).

Official documentation: complete municipal warnings and maximum municipal warning level.

Station methods:

meteogalicia.get_observation_dailydata_by_station("10144")
meteogalicia.get_observation_last10mindata_by_station("10144")

Parameter station id's are available at https://servizos.meteogalicia.gal/mgrss/observacion/listaEstacionsMeteo.action

Tides methods:

meteogalicia.get_forecast_tide("3")

id availables at: https://www.meteogalicia.gal/datosred/infoweb/meteo/docs/rss/RSS_Mareas_gl.pdf

Errors:

  • Methods return None when no data is available or the request fails.

Metadata

Release files for MeteoGalicia-API 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for MeteoGalicia-API 0.1.5
File Size Uploaded
meteogalicia_api-0.1.5.tar.gz 24.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for MeteoGalicia-API 0.1.5
File Interpreter ABI Platform
meteogalicia_api-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 43.7 kB

Release files / meteogalicia_api-0.1.5.tar.gz

Download URL meteogalicia_api-0.1.5.tar.gz
Size 24.8 kB
Tags Source
SHA-256 checksum
How to use checksums
ab0342d22b140c350abb9cef6011baff461f4c26e11cdf4337d2a9cac09276a5
BLAKE2b-256 checksum
How to use checksums
aef2a9bcf812d7ce3c6bf864d259ca317462e077a20e42ee98a4596ac913bffb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.

Transparency log

Release files / meteogalicia_api-0.1.5-py3-none-any.whl

Download URL meteogalicia_api-0.1.5-py3-none-any.whl
Size 18.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6a87a057b4dc9c24745b0427f756ddcabad52676bb9b3c13a5efed21d12b01b4
BLAKE2b-256 checksum
How to use checksums
bccb8274ca666fc99b193f7e5d77e4638f46dc4c2c6ad2541d430c66bdd5029a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

This release

0.1.5 This release

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page