Skip to content

maroffo/pyowm

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyOWM

A Python wrapper around the OpenWeatherMap API

Build Status Coverage Status

What is it?

PyOWM is a client Python wrapper library for the OpenWeatherMap (OWM) web API.

It allows quick and easy consumption of OWM weather data from Python applications via a simple object model and in a human-friendly fashion.

No additional libraries are requested: only the Python standard library modules.

Support

PyOWM currently supports version 2.5 of the OWM API (which is the latest one)

PyOWM runs on Python 2.7, 3.2 and 3.3

License

MIT license

Use it

import pyowm

owm = pyowm.OWM('your-API-key')
    
# Will it be sunny tomorrow at this time in Milan (Italy) ?
forecast = owm.daily_forecast("Milan,it")
tomorrow = pyowm.timeutils.tomorrow()
forecast.will_be_sunny_at(tomorrow)  # Always True in Italy, right? ;-)

# Search for current weather in London (UK)
observation = owm.weather_at_place('London,uk')
w = observation.get_weather()
print(w)                      # <Weather - reference time=2013-12-18 09:20, 
                              # status=Clouds>

# Weather details
w.get_wind()                  # {'speed': 4.6, 'deg': 330}
w.get_humidity()              # 87
w.get_temperature('celsius')  # {'temp_max': 10.5, 'temp': 9.7, 'temp_min': 9.0}

# Search current weather observations in the surroundings of 
# lat=22.57W, lon=43.12S (Rio de Janeiro, BR)
observation_list = owm.weather_around_coords(-22.57, -43.12)

Install it

With pip

pip install pyowm

From source with setuptools

  1. Download the source archive either from GitHub (select a release or just take the main branch) or from the Python Package Index

  2. Uncompress:

    `unzip pywom-x.y.z`
    
  3. Launch setuptools:

    `cd pywom-x.y.z`
    
    `python setup.py install`
    

.exe installer (Windows users)

The installer is available on the Python Package Index

What's new

Please read the changelog page of the wiki

Documentation

Usage examples are available in the wiki page.

The library API documentation is available on Read the Docs.

Test

Unit testing is as simple as python setup.py test -s tests.unit

PyOWM is continuously built with Travis-CI and code coverage is checked with Coveralls.io

Development

Contributors (code enhancement, issue/bug reporting) are welcome!

Branching model

The project adopts @nvie's branching model

The "develop" branch contains work-in-progress code: the unit of branching is a feature/enhancement. From the "develop" branch, new "feature" branches which will be opened.

The "master" branch will contain only stable code and the "develop" branch will be merged back into it only when a milestone is completed.

Bug fixes will be done as "hotfixes" stemming out of the "master" branch and then will be merged back in both "master" and "develop" branch.

"feature" and "hotfix" branches can be opened by any contributor: once terminated, please send a pull request and I'll merge. Merging of "develop" into "master" will be done by myself when releasing.

References

About

PyOWM - A Python wrapper around the OpenWeatherMap web API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 80.1%
  • JavaScript 14.0%
  • CSS 4.2%
  • Shell 1.7%