https://github.com/kinverarity1/python-sa-gwdata
Python package for the Groundwater Data section of the DEW WaterConnect website
https://github.com/kinverarity1/python-sa-gwdata
data-access groundwater python south-australia
Last synced: 11 months ago
JSON representation
Python package for the Groundwater Data section of the DEW WaterConnect website
- Host: GitHub
- URL: https://github.com/kinverarity1/python-sa-gwdata
- Owner: kinverarity1
- License: mit
- Created: 2018-12-16T05:42:05.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2024-12-04T01:23:48.000Z (over 1 year ago)
- Last Synced: 2025-05-23T20:09:34.887Z (11 months ago)
- Topics: data-access, groundwater, python, south-australia
- Language: Jupyter Notebook
- Homepage: https://python-sa-gwdata.readthedocs.io/en/latest/index.html
- Size: 15.1 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE-OF-CONDUCT.md
Awesome Lists containing this project
README
# python-sa-gwdata
[](https://github.com/kinverarity1/aseg_gdf2/blob/master/LICENSE)
Python code to get groundwater data for South Australia
This code provides the Python package ``sa_gwdata`` to make it easier to download and access groundwater data from the South Australian Department for Environment and Water's [Groundwater Data website](https://www.waterconnect.sa.gov.au/Systems/GD/Pages/Default.aspx). It also provides some help for getting related data from the Department for Energy and Mining's [South Australian Resources Information Gateway (SARIG) website](https://minerals.sarig.sa.gov.au/QuickSearch.aspx).
This is an unofficial side-project done in my spare time.
## How to use
Check out the [complete package documentation](https://python-sa-gwdata.readthedocs.io/en/latest/index.html), and
some tutorial Jupyter Notebooks in the [notebooks](notebooks) folder.
Define the wells you are interested in manually:
```python
>>> import sa_gwdata
>>> wells = sa_gwdata.find_wells("5928-203 and also ULE 96")
>>> wells
["LKW042", "ULE096"]
```
(It has recognised automatically that [5928-203](https://www.waterconnect.sa.gov.au/Systems/GD/Pages/Details.aspx?DHNO=7207&PN=1421712654109#Summary) is also known as LKW042).
Or search for wells by geographic area:
```python
>>> wells = sa_gwdata.find_wells_in_lat_lon([-34.65, -34.62], [135.47, 135.51])
```
Then you can download data as pandas DataFrames:
```python
>>> wls = sa_gwdata.water_levels(wells)
>>> tds = sa_gwdata.salinities(wells)
>>> dlogs = sa_gwdata.drillers_logs(wells)
```
There is also full access to the underlying [set of web services](https://python-sa-gwdata.readthedocs.io/en/latest/webservices.html) which provide a variety of data in JSON format.
Start a session with Groundwater Data:
```python
>>> session = sa_gwdata.WaterConnectSession()
```
On initialisation it downloads some summary information.
```python
>>> session.networks
{'ANGBRM': 'Angas Bremer PWA',
'AW_NP': 'Alinytjara Wilurara Non-Prescribed Area',
'BAROOTA': 'Baroota PWRA',
'BAROSSA': 'Barossa PWRA',
'BAROSS_IRR': 'Barossa irrigation wells salinity monitoring',
'BERI_REN': 'Berri and Renmark Irrigation Areas',
'BOT_GDNS': 'Botanic Gardens wetlands',
'CENT_ADEL': 'Central Adelaide PWA',
'CHOWILLA': 'Chowilla Floodplain',
...
}
```
With this information we can make some direct REST calls:
```python
>>> r = session.get("GetObswellNetworkData", params={"Network": "CENT_ADEL"})
>>> r.df.head(5)
```
```
aq_mon chem class dhno drill_date lat latest_open_date latest_open_depth latest_sal_date latest_swl_date ... pwa replaceunitnum sal salstatus stat_desc swl swlstatus tds water yield
0 Tomw(T2) Y WW 27382 1968-02-07 -34.764662 1992-02-20 225.00 2013-09-02 2018-09-18 ... Central Adelaide NaN Y C OPR 3.47 C 3620.0 Y 2.00
1 Qhcks N WW 27437 1963-01-01 -34.800905 1963-01-01 6.40 1984-02-01 1986-03-05 ... Central Adelaide NaN Y H NaN 5.86 H 1121.0 Y NaN
2 Tomw(T1) Y WW 27443 1972-04-20 -34.811124 2014-04-01 0.00 1991-10-09 2003-07-04 ... Central Adelaide NaN Y H BKF NaN H 2030.0 Y 5.00
3 Tomw(T1) Y WW 27504 1978-02-28 -34.779893 1978-02-28 144.50 2016-04-06 2011-09-18 ... Central Adelaide NaN Y H OPR 11.21 H 2738.0 Y 0.00
4 Tomw(T1) Y WW 27569 1975-01-01 -34.891250 1975-07-09 131.10 1986-11-13 1988-09-21 ... Central Adelaide NaN Y H BKF 9.90 H 42070.0 Y 12.50
```
## Install
You will need Python 3.8 or a more recent version.
```bash
$ pip install -U python-sa-gwdata
```
This installs the latest [release](https://github.com/kinverarity1/python-sa-gwdata/releases) of the Python package ``sa_gwdata``.
To install the latest code from GitHub, make sure you the dependencies ``pandas`` and ``requests`` installed, then use:
```bash
$ pip install https://github.com/kinverarity1/python-sa-gwdata/archive/master.zip
```
## License
MIT