Skip to main content

Python package to download Australian rainfall data from the Bureau of Meteorology via the Queensland Government's SILO Patched Point Data service

Project description

ausweather

Download Australian weather data from the Bureau of Meteorology via SILO using Python

Installation

Install from the command line:

python -m pip install -U ausweather

Example of how to use

In a Python interpreter session:

>>> import ausweather

To use this package to download annual rainfall data for Kent Town, first you need to find the station number using the BoM Weather Station Directory. Then you can use the fetch_bom_station_from_silo(station_number, email_address) function to return a dictionary:

>>> data = ausweather.fetch_bom_station_from_silo(23090, 'kinverarity@hotmail.com')
station #: 23090 name: ADELAIDE (KENT TOWN) title: 23090 ADELAIDE (KENT TOWN) (fetched from SILO on 2020-03-04 16:23:26.395696)
>>> data.keys()
dict_keys(['silo_returned', 'station_no', 'station_name', 'title', 'df', 'annual', 'srn'])

The data is stored in this dictionary under the key "df":

>>> data['df'].info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 25677 entries, 1 to 25677
Data columns (total 28 columns):
Date       25677 non-null datetime64[ns]
Day        25677 non-null int32
Date2      25677 non-null object
T.Max      25677 non-null float64
Smx        25677 non-null int32
T.Min      25677 non-null float64
Smn        25677 non-null int32
Rain       25677 non-null float64
Srn        25677 non-null int32
Evap       25677 non-null float64
Sev        25677 non-null object
Radn       25677 non-null float64
Ssl        25677 non-null int32
VP         25677 non-null float64
Svp        25677 non-null int32
RHmaxT     25677 non-null float64
RHminT     25677 non-null float64
FAO56      25677 non-null float64
Mlake      25677 non-null float64
Mpot       25677 non-null float64
Mact       25677 non-null float64
Mwet       25677 non-null float64
Span       25677 non-null float64
Ssp        25677 non-null int32
EvSp       25677 non-null float64
Ses        25677 non-null int32
MSLPres    25677 non-null float64
Sp         25677 non-null int32
dtypes: datetime64[ns](1), float64(16), int32(9), object(2)
memory usage: 4.6+ MB

To see annual rainfall, you can group-by the dt.year accessor of the "Date" column:

>>> df = data["df"]
>>> df.groupby(df.Date.dt.year).Rain.sum()
Date
1950    426.9
1951    677.9
1952    584.9
1953    601.0
1954    439.6
        ...  
2016    820.8
2017    536.2
2018    429.8
2019    376.3
2020    101.6
Name: Rain, Length: 71, dtype: float64

License

Released under the MIT License.

Version history

Version 0.14 (17 February 2026)

  • Correct generation of current in SA site list.

Version 0.13 (6 January 2026)

  • Add missing dependency (scipy)

Version 0.12 (6 January 2026)

  • Change to use importlib.metadata for version

Version 0.11 (5 January 2026)

  • Many undescribed changes and new classes.

Version 0.2.1 (3 Mar 2020)

  • Fix bug for whitespace in BoM station name

Version 0.2.0 (3 Mar 2020)

  • Update, many changes.

Version 0.1.0 (11 Feb 2020)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ausweather-0.14.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ausweather-0.14-py3-none-any.whl (269.5 kB view details)

Uploaded Python 3

File details

Details for the file ausweather-0.14.tar.gz.

File metadata

  • Download URL: ausweather-0.14.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for ausweather-0.14.tar.gz
Algorithm Hash digest
SHA256 a61b2e2c0c8c5e9e783f9eb47bd8e45ee1a419d05c185f864f35d7084ae9e844
MD5 043931d362ba82527630307637bceb5e
BLAKE2b-256 535191007b20060dd4c2f1817e157409b7499cdb65670caeab69fddcf35c88c6

See more details on using hashes here.

File details

Details for the file ausweather-0.14-py3-none-any.whl.

File metadata

  • Download URL: ausweather-0.14-py3-none-any.whl
  • Upload date:
  • Size: 269.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for ausweather-0.14-py3-none-any.whl
Algorithm Hash digest
SHA256 937c76a56539f55a1ed888d716a464a8a84f1df85a53af1e0cc85dc045f1981e
MD5 1e764648ecb2788b9447cececaacc557
BLAKE2b-256 2373ea803f575b8442845a43add9635498bf487300fed7a712c8bddfdbd5f9a3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page