Openmeteopy
openmeteopy is a client Python wrapper library for Open-Meteo web API. It allows quick and easy consumption of OM data from Python applications via a simple object model and in a human-friendly fashion.
Install / Use
/learn @m0rp43us/OpenmeteopyREADME
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.
What is it?
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.
Installation (pypi)
working on it
Installation (source)
pip install git+https://github.com/m0rp43us/openmeteopy
APIs
|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()|-|
Output formats:
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>)|
Upcoming Changes,updates,things to do :
- 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
Related Skills
node-connect
347.6kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
347.6kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
347.6kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
