OpenWeatherMap.org API wrapper
Project description
A basic OpenWeatherMap.org API client.
News on experimental caching:
The version here in the repository is currently ahead of the latest version distributed on PyPy (0.9). It features Caching.
If the cache isn’t explicitly deactivated, the function “get_historic_weather()” stores data fetched from the API in an SQLite database. On subsequent requests, data is fetched directly from the database, if available.
In order to deactivate the cache, use
ow = openweather.OpenWeather(cache=False)
and in order to explicitly set a path for the cache DB file, use
ow = openweather.OpenWeather(cache="path/to/cache.db")
Install
To install the latest release:
pip install openweather
For the latest version from the repository, use:
pip install git+https://github.com/marians/openweather.git
Python module example
import openweather from datetime import datetime # create client ow = openweather.OpenWeather() # find weather stations near me stations = ow.find_stations_near( 7.0, # longitude 50.0, # latitude 100 # kilometer radius ) # iterate results for station in stations: print station # get current weather at Cologne/Bonn airport # (station id = 4885) print ow.get_weather(4885) # historic weather start_date = datetime(2013, 09, 10) end_date = datetime(2013, 09, 15) # default: hourly interval print ow.get_historic_weather(4885, start_date, end_date) # daily aggregates print ow.get_historic_weather(4885, start_date, end_date, "day")
Command line client example
Print current weather at station ID 4885:
$ openweather -s 4885
Print historic weather for 2013-10-01 at station ID 4885:
$ openweather -s 4885 -d 20131001
For valid formats of the -d or --date parameter, see daterangestr.
Print historic data in CSV format
$ python openweather.py -s 4885 -d 20131022 --csv
This is particularly usefull if you want to store that data to a file…
$ openweather -s 4885 -d 20131022 --csv > weather.csv
… or want to manipulate and display it (using csvkit):
$ openweather -s 4885 -d 20131027 --csv|csvcut -c 9,26,30,35,43|csvlook |-------------+-------------+------------+------------+---------------| | dt | main_temp_v | pressure_v | wind_deg_v | wind_speed_v | |-------------+-------------+------------+------------+---------------| | 1382824800 | 287.15 | 1005 | | 4.1 | | 1382835600 | 290.4 | 1008.25 | 170 | 5.93 | | 1382839200 | 289.15 | 1007.5 | 175 | 5.1 | ... | 1382904000 | 287.15 | 1007 | 210 | 5.9 | | 1382907600 | 287.15 | 1007 | 200 | 6.2 | | 1382911200 | 287.15 | 1006 | 177 | 5.1 | | | | | | | |-------------+-------------+------------+------------+---------------|
Like openweather?
Feel free to tip me!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size openweather-0.10.tar.gz (4.9 kB) | File type Source | Python version None | Upload date | Hashes View |