skillfed

openmeteo-requests

Open-Meteo Python Library

openmeteo-requests v1.7.5 351.8K downloads/30d#7,318 on PyPI50
Permissive license Active released

What it is and what it does

openmeteo-requests is a Python client for the Open-Meteo Weather API that uses FlatBuffers instead of JSON for data serialization. This design choice makes it efficient for handling large volumes of time-series weather data. The library supports both synchronous and asynchronous requests and integrates directly with NumPy, Pandas, and Polars through zero-copy data access, allowing you to analyze weather data without intermediate parsing overhead.

The package is aimed at data scientists and developers who need to retrieve and process weather forecasts or historical data (available from 1940 onward). It depends on niquests for HTTP requests and openmeteo-sdk for FlatBuffers schema handling. The library is actively maintained, supports Python 3.9 through 3.14, and has no known security vulnerabilities.

Use it for:

  • Retrieve hourly weather forecasts (temperature, precipitation, wind) for one or multiple locations in a single API call
  • Build time-series weather datasets for machine learning or statistical analysis using direct NumPy array access
  • Fetch historical weather data from 1940 onward for climate research or backtesting applications
  • Create Pandas or Polars DataFrames from weather data without intermediate JSON parsing
  • Implement async weather data pipelines for applications that need concurrent requests to multiple locations

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Fetches weather data from the Open-Meteo API using FlatBuffers for efficient transfer, with support for both synchronous and asynchronous requests and zero-copy integration with NumPy, Pandas, and Polars.

Yes. The package is actively maintained, has low install friction, permissive licensing, no known vulnerabilities, and fills a specific niche for efficient weather data retrieval. It is particularly valuable if you work with large time-series datasets or need async support, though it requires familiarity with FlatBuffers' function-call-based attribute access rather than direct object properties.

Install

openmeteo-requests on PyPI

pip

pip install openmeteo-requests

uv

uv add openmeteo-requests

poetry

poetry add openmeteo-requests

Installing openmeteo-requests

Before you install

Low install friction with only two runtime dependencies (niquests and openmeteo-sdk). Package is actively maintained with recent commits and supports modern Python versions (3.9 through 3.14).

License in practice

Licensed under MIT (permissive), allowing free use, modification, and distribution with minimal restrictions.

Quickstart

pip install openmeteo-requests

import openmeteo_requests

openmeteo = openmeteo_requests.Client()
responses = openmeteo.weather_api(
    "https://api.open-meteo.com/v1/forecast",
    params={"latitude": 52.52, "longitude": 13.41, "current": ["temperature_2m"]}
)
response = responses[0]
print(response.Latitude())

Verify before relying

  • Whether FlatBuffers zero-copy integration with NumPy/Pandas/Polars requires additional setup or dependencies beyond what is listed
  • Performance characteristics and memory efficiency gains compared to JSON-based weather APIs
  • API rate limits and whether caching with requests-cache is the recommended approach for production use

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 2 — niquests, openmeteo-sdk
Maintenance actively maintained — 207 days since the last release
Last repo commit
First released
Downloads 351,784/month — #7,318 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: openmeteo_requests-1.7.5-py3-none-any.whl

Keywords: client, meteo, open, python, weather

Development Status :: 3 - AlphaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9

Tags

weather api client pythonopen-meteo weather dataflatbuffers weather forecasthistorical weather data apiasync weather requestsnumpy pandas weather integrationtime-series weather analysis
weather-apiflatbufferstime-series

More WWW/HTTP packages