Python module to interact with the AEMET API to download meteorological data
Project description
pyAEMET
A python library developed to download daily climatological values from the Spanish National Meteorological Agency (AEMET) through its OpenData API. The library contains several methods to facilitate downloading and filtering the climatological data.
The information that this library collects and uses is property of the Spanish State Meteorological Agency, available through its AEMET OpenData REST API.
Installation
$ pip install pyaemet
To use the pyAEMET module, you need to get an API key from the AEMET (Spanish State Meteorological Agency) OpenData platform. You can apply for a key here.
Usage
Once the module is installed and you have your API key, you can start using the module by importing it in your Python script. To use the module's functions, you need to initialize the client with your API key:
import pyaemet
aemet = pyaemet.AemetClima(api_key)
The AemetClima class takes an API key as a parameter in its constructor and allows you to get
information about the available monitoring sites, filter sites based on different parameters
(e.g., city, province, autonomous community), and get nearby sites to a specific location.
Here is a summary of some of the methods provided by the AemetClima class:
sites_info: Retrieves information about all the available monitoring sites. The method returns an instance of theSitesDataFrameclass, which is a subclass of the pandasDataFrame.
aemet.sites_info(update=True)
sites_in: Filters the available monitoring sites based on specified parameters (e.g., city, province, autonomous community). The method returns an instance of theSitesDataFrameclass.
aemet.sites_in(subregion="Cantabria")
near_sites: Retrieves then_nearmonitoring sites closest to a specified latitude and longitude, within a maximum distance ofmax_distancekilometers. The method returns an instance of theNearSitesDataFrameclass.
aemet.near_sites(latitude=43.47,
longitude=-3.798,
n_near=5, max_distance=50)
-
sites_curation: Retrieves the amount of available data of certainvariablesin the monitoringsitesin a period of time defined bystart_dtandend_dt. The function returns aSitesDataFrameorNearSitesDataFrame(depends of the type of thesitesparameter given) with a column with the averageamountbetween allvariablesandhas_enoughboolean if the amount is greater or equal to athreshold. -
daily_clima: Retrieves daily climate data for a givensiteor a list of sites over a specified date range defined bystart_dtandend_dt. The function returns aObservationsDataFrameobject, which is a data structure that holds the retrieved climate data along with any associated metadata.
import datetime
aemet.daily_clima(site=aemet.sites_in(city="Santander"),
start_dt=datetime.date(2022, 6, 3),
end_dt=datetime.date.today())
The module also provides three deprecated methods estaciones_info, estaciones_loc and clima_diaria
that perform similar functionality as the sites_info, sites_in and daily_clima methods, respectively.
You can find the complete documentation of the module's functions in the GitHub repository, under the docs directory.
FAQ
Contributing
References
- "Estimating changes in air pollutant levels due to COVID-19 lockdown measures based on a business-as-usual prediction scenario using data mining models: A case-study for urban traffic sites in Spain", published in Science in Total Environment by J. González-Pardo et al. (2021)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyaemet-1.1.1.tar.gz.
File metadata
- Download URL: pyaemet-1.1.1.tar.gz
- Upload date:
- Size: 2.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9b2f351222974e50f0ee686a0bb22f1240d75d03d3842a315509e1abf9620543
|
|
| MD5 |
efa30d1029f14b2b2b2ef32d6a28e69c
|
|
| BLAKE2b-256 |
d19f3b551507d478ca06513dc9defa4fd75700f5fb4b38d4c7d4368fcfb8cba0
|
File details
Details for the file pyaemet-1.1.1-py3-none-any.whl.
File metadata
- Download URL: pyaemet-1.1.1-py3-none-any.whl
- Upload date:
- Size: 40.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e2ba2c95d12577bc369a89ea415fe1be94970516615f1900ec5d773303e1860
|
|
| MD5 |
8245bbf5a1908b0dbbbbda59811feb8b
|
|
| BLAKE2b-256 |
d7221169328feb886b627b574e74d11c529987d27183dd29698eb2575e940431
|