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.7

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.7
File Size Uploaded
meteogalicia_api-0.1.7.tar.gz 29.9 kB Details

Built distribution (wheel)

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

Total release size: 53.2 kB

Release files / meteogalicia_api-0.1.7.tar.gz

Download URL meteogalicia_api-0.1.7.tar.gz
Size 29.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f3c8c6b1a4aa526b057b9dd944c6c2e7755e047087ce78789bafdbe4800612cd
BLAKE2b-256 checksum
How to use checksums
0014d726e0b2c19b6e710976acca898d498ff9aa7516eb7504241cca84e5d512
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.7-py3-none-any.whl

Download URL meteogalicia_api-0.1.7-py3-none-any.whl
Size 23.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b3d6b78d6dd73ab34a7ec03e92189ebe3e429a33660a21c1b813228f97b23899
BLAKE2b-256 checksum
How to use checksums
b6cbaf0462a3260d3780acfceacb2fe11bbd0aa8ea42176a57eb373da7538bff
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

This release

0.1.7 This release

2 release files

0.1.6

2 release files

0.1.5

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