{"id":13948877,"url":"https://github.com/meteostat/meteostat-python","last_synced_at":"2025-07-20T10:32:54.612Z","repository":{"id":38349921,"uuid":"285335799","full_name":"meteostat/meteostat-python","owner":"meteostat","description":"Access and analyze historical weather and climate data with Python.","archived":false,"fork":false,"pushed_at":"2025-07-05T12:22:38.000Z","size":1364,"stargazers_count":506,"open_issues_count":24,"forks_count":65,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-07-15T06:34:45.784Z","etag":null,"topics":["climate","climate-change","climate-data","data-science","meteostat","open-data","statistics","weather","weather-data","weather-station"],"latest_commit_sha":null,"homepage":"https://dev.meteostat.net/python/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/meteostat.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"clampr","patreon":"meteostat","custom":["https://www.paypal.com/donate?hosted_button_id=MQ67WRDC8EW38"]}},"created_at":"2020-08-05T15:47:15.000Z","updated_at":"2025-07-14T14:41:57.000Z","dependencies_parsed_at":"2023-09-21T19:12:18.381Z","dependency_job_id":"8f53abf5-061e-4386-94f5-de1c61e3a14e","html_url":"https://github.com/meteostat/meteostat-python","commit_stats":{"total_commits":117,"total_committers":2,"mean_commits":58.5,"dds":0.008547008547008517,"last_synced_commit":"d9585d77ed35c30792763e9e6fe47a600556719a"},"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"purl":"pkg:github/meteostat/meteostat-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteostat%2Fmeteostat-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteostat%2Fmeteostat-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteostat%2Fmeteostat-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteostat%2Fmeteostat-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meteostat","download_url":"https://codeload.github.com/meteostat/meteostat-python/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meteostat%2Fmeteostat-python/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265484866,"owners_count":23774412,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["climate","climate-change","climate-data","data-science","meteostat","open-data","statistics","weather","weather-data","weather-station"],"created_at":"2024-08-08T05:01:33.247Z","updated_at":"2025-07-20T10:32:54.599Z","avatar_url":"https://github.com/meteostat.png","language":"Python","funding_links":["https://github.com/sponsors/clampr","https://patreon.com/meteostat","https://www.paypal.com/donate?hosted_button_id=MQ67WRDC8EW38","https://www.patreon.com/meteostat"],"categories":["Climate Change"],"sub_categories":["Climate Data Access and Visualization"],"readme":"# Meteostat Python Package\n\nThe Meteostat Python library provides a simple API for accessing open weather and climate data. The historical observations and statistics are collected by [Meteostat](https://meteostat.net) from different public interfaces, most of which are governmental.\n\nAmong the data sources are national weather services like the National Oceanic and Atmospheric Administration (NOAA) and Germany's national weather service (DWD).\n\nAre you looking for a **hosted solution**? Try our [JSON API](https://rapidapi.com/meteostat/api/meteostat/).\n\n## Installation\n\nThe Meteostat Python package is available through [PyPI](https://pypi.org/project/meteostat/):\n\n```sh\npip install meteostat\n```\n\nMeteostat **requires Python 3.6** or higher. If you want to visualize data, please install Matplotlib, too.\n\n## Documentation\n\nThe Meteostat Python library is divided into multiple classes which provide access to the actual data. The [documentation](https://dev.meteostat.net/python/) covers all aspects of the library:\n\n* **Selecting Locations**\n  * [Geographical Point](https://dev.meteostat.net/python/point.html)\n  * [Weather Stations](https://dev.meteostat.net/python/stations.html)\n* **Time Series**\n  * [Hourly Data](https://dev.meteostat.net/python/hourly.html)\n  * [Daily Data](https://dev.meteostat.net/python/daily.html)\n  * [Monthly Data](https://dev.meteostat.net/python/monthly.html)\n* **Miscellaneous Data**\n  * [Climate Normals](https://dev.meteostat.net/python/normals.html)\n* **Library**\n  * [Contributing](https://dev.meteostat.net/python/contributing.html)\n  * [Formats \u0026 Units](https://dev.meteostat.net/formats.html)\n  * [Data Sources](https://dev.meteostat.net/sources.html)\n  * [Terms \u0026 License](https://dev.meteostat.net/terms.html)\n\n## Example\n\nLet's plot 2018 temperature data for Vancouver, BC:\n\n```python\n# Import Meteostat library and dependencies\nfrom datetime import datetime\nimport matplotlib.pyplot as plt\nfrom meteostat import Point, Daily\n\n# Set time period\nstart = datetime(2018, 1, 1)\nend = datetime(2018, 12, 31)\n\n# Create Point for Vancouver, BC\nlocation = Point(49.2497, -123.1193, 70)\n\n# Get daily data for 2018\ndata = Daily(location, start, end)\ndata = data.fetch()\n\n# Plot line chart including average, minimum and maximum temperature\ndata.plot(y=['tavg', 'tmin', 'tmax'])\nplt.show()\n```\n\nTake a look at the expected output:\n\n![2018 temperature data for Vancouver, BC](https://dev.meteostat.net/assets/img/py-example-chart.046f8b8e.png)\n\n## Contributing\n\nInstructions on building and testing the Meteostat Python package can be found in the [documentation](https://dev.meteostat.net/python/contributing.html). More information about the Meteostat bulk data interface is available [here](https://dev.meteostat.net/bulk/).\n\n## Donating\n\nIf you want to support the project financially, you can make a donation using one of the following services:\n\n* [GitHub](https://github.com/sponsors/clampr)\n* [Patreon](https://www.patreon.com/meteostat)\n* [PayPal](https://www.paypal.com/donate?hosted_button_id=MQ67WRDC8EW38)\n\n## Data License\n\nMeteorological data is provided under the terms of the [Creative Commons Attribution-NonCommercial 4.0 International Public License (CC BY-NC 4.0)](https://creativecommons.org/licenses/by-nc/4.0/legalcode). You may build upon the material\nfor any purpose, even commercially. However, you are not allowed to redistribute Meteostat data \"as-is\" for commercial purposes.\n\nBy using the Meteostat Python library you agree to our [terms of service](https://dev.meteostat.net/terms.html). All meteorological data sources used by the Meteostat project are listed [here](https://dev.meteostat.net/sources.html).\n\n## Code License\n\nThe code of this library is available under the [MIT license](https://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeteostat%2Fmeteostat-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeteostat%2Fmeteostat-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeteostat%2Fmeteostat-python/lists"}