Download Meteorological Data from OPEN-METEO API (https://open-meteo.com/en)
Open-Meteo collaborates with National Weather Services providing Open Data with 11 to 2 km resolution. Our high performance APIs select the best weather model for your location and provide data as a simple JSON API.
APIs are free without any API key for open-source developers and non-commercial use. You can embed them directly into your app.
openmeteopy is a client Python wrapper library for Open-Meteo web API. It allows quick and easy consumption of Open-Meteo data from Python applications via a simple object model and in a human-friendly fashion.
You can use all Openmeteo's available APIs,which are 14 (explained in the table below).
openmeteopy runs on Python 3.6+.
Full documentation is reported here: DOCUMENTATION.
working on it
pip install git+https://github.com/m0rp43us/openmeteopy
API | Description | Documentation | Options Class | Hourly Class | Daily Class | 15 Minutes Class |
---|---|---|---|---|---|---|
Weather forecast | Select your location, weather variables and start using the API. | Weather Forecast | ForecastOptions() |
HourlyForecast() |
DailyForecast() |
- |
Historical Weather | Discover how weather has shaped our world from 1940 until now | Historical Weather | HistoricalOptions() |
HourlyHistorical() |
DailyHistorical() |
- |
ECMWF Weather Forecast | Global High Frequency Forecasts at 0.4° resolution | ECMWF Weather Forecast | EcmwfOptions() |
HourlyEcmwf() |
- | - |
GFS & HRRR Forecast | Global GFS model combined with hourly HRRR updates at 3-km resolution | GFS & HRRR Forecast | GfsOptions() |
HourlyGfs() |
DailyGfs() |
- |
MeteoFrance | Global ARPEGE model combined with high resolution AROME model | MeteoFrance | MeteoFranceOptions() |
HourlyMeteoFrance() |
DailyMeteoFrance() |
- |
DWD ICON | Open data weather forecasts from the German weather service DWD | DWD ICON | DwdOptions() |
HourlyDwd() |
DailyDwd() |
FifteenMinutesDwd() |
JMA | 5-km high resolution forecasts for Japan, Korea, parts of China and Russia | JMA | JmaOptions() |
HourlyJma() |
DailyJma() |
- |
MET Norway | Hourly updates & 1 km forecasts for Scandinavia | MET Norway | MetnoOptions() |
HourlyMetno() |
- | - |
GEM | 2.5 km high resolution forecasts for North America | GEM | GemOptions() |
HourlyGem() |
DailyGem() |
- |
Marine Weather | Hourly wave forecasts at 5 km resolution | Marine Weather | MarineOptions() |
HourlyMarine() |
DailyMarine() |
- |
Air Quality | Pollutants and pollen forecast in 11 km resolution | Air Quality | AirQualityOptions() |
HourlyAirQuality() |
- | - |
Geocoding | Search locations in any language globally | Geocoding | GeocodingOptions() |
- | - | - |
Elevation | 90 meter resolution digital elevation model | Elevation | ElevationOptions() |
- | - | - |
Global Flood | Simulated river discharge at 5 km resolution from 1984 up to 7 months forecast | Global Flood | FloodOptions() |
- | DailyForecast() |
- |
You can get your output in python dictionary, json string, pandas DataFrame, numpy array. Additionally, you can save APIs response to files in csv, excel or json format.
Output | Library function |
---|---|
dict (full server response) | client._fetch() |
dict (cleaned version) | client.get_dict() |
json string (cleaned version) | client.get_json_str() |
numpy array | client.get_numpy() |
pandas DataFrame (keys are dates,value are correspongding values) | client.get_pandas() |
save to csv (keys are dates,value are correspongding values) | save_csv(<filepath>) |
save to excel (keys are dates,value are correspongding values) | save_excel(<filepath>) |
save to json | save_json(<filepath>) |
- Add the other 2 variables to ECWMF pressure level parameters
- remove pressure level variables from JMA (Remove inheritence from FranceMeteo)
- Add Support of Date Types (input and output)
- Add versionning and package to pypi