sa_gwdata Python package ======================== The sa_gwdata package currently provides a helpful way to access the WaterConnect web services (see following page) and provide data as :class:`pandas.DataFrame` instances. Features under development will allow easier ways to find and use well IDs across the entire interface, and other things. Install ~~~~~~~ You can install sa_gwdata the usual way: .. code-block:: powershell > pip install -U python-sa-gwdata This will install and/or update the Python package ``sa_gwdata``. Usage ~~~~~ To create the Groundwater Data wrapper: .. code-block:: python >>> from sa_gwdata import WaterConnectSession >>> session = WaterConnectSession() Then to access any of the web service calls: .. code-block:: python >>> response = session.get("GetObswellNetworkData", params={"Network": "KAT_FP,PIKE_FP"}) >>> len(response.df) 190 >>> response.df.columns Index(['aq_mon', 'chem', 'class', 'dhno', 'drill_date', 'lat', 'latest_open_date', 'latest_open_depth', 'latest_sal_date', 'latest_swl_date', 'latest_yield_date', 'litholog', 'logdrill', 'lon', 'mapnum', 'max_depth', 'name', 'nrm', 'obsnetwork', 'obsnumber', 'permit_no', 'purp_desc', 'pwa', 'replaceunitnum', 'sal', 'salstatus', 'stat_desc', 'swl', 'swlstatus', 'tds', 'water', 'yield'], dtype='object') >>> response.df.obsnumber.unique() array(['KTR043', 'KTR023', 'KTR025', 'KTR026', 'PYP008', 'PAG003', 'KTR065', 'LVD002', 'RMK004', 'RMK010', 'RMK006', 'RMK007', 'KTR021', 'KTR022', 'RMK074', 'RMK080', 'RMK077', 'RMK055', 'KTR034', 'RMK214', 'RMK215', 'RMK216', 'RMK229', 'RMK233', 'GDN044', 'GDN055', 'GDN064', 'RMK355', 'RMK356', 'PAG069', 'PAG070', 'PAG071', 'PAG077', 'PAG078', 'PAG079', 'PAG080', 'PAG081', 'PAG082', 'PAG083', 'PAG084', 'PAG085', 'PAG086', 'PAG038', 'PAG042', 'PAG043', 'PAG044', 'PAG045', 'PAG059', 'PAG058', 'GDN186', 'RMK361', 'MTH012', 'PAG068', 'GDN128', 'GDN132', 'GDN187', 'GDN188', 'PAG104', 'PYP055', 'RMK357', 'RMK363', 'RMK365', 'RMK359', 'RMK362', 'RMK385', 'RMK374', 'KTR060', 'KTR061', 'RMK368', 'GDN185', 'RMK369', 'RMK375', 'PAG142', 'PAG162', 'PAG161', 'PAG117', 'RMK379', 'PAG130', 'PAG129', 'PAG116', 'PAG115', 'MTH021', 'PAG089', 'PAG091', 'PAG092', 'PAG094', 'PAG097', 'RMK370', 'RMK371', 'KTR067', 'KTR068', 'RMK367', 'RMK347', 'RMK348', 'RMK349', 'RMK382', 'RMK380', 'RMK381', 'PAG118', 'PAG114', 'PAG119', 'RMK354', 'RMK384', 'RMK383', 'RMK364', 'RMK360', 'RMK366', 'KTR066', 'RMK358', 'RMK373', 'PAG158', 'PAG155', 'PAG152', 'PAG135', 'PAG134', 'PAG131', 'PAG143', 'PAG146', 'PAG151', 'PAG147', 'PAG168', 'PAG165', 'RMK376', 'KTR058', 'KTR062', 'RMK372', 'KTR064', 'KTR063', 'RMK377', 'KTR059', 'PAG139', 'PAG140', 'PAG169', 'PAG170', 'PAG175', 'PAG153', 'PAG154', 'PAG157', 'PAG156', 'PAG159', 'PAG160', 'PAG133', 'PAG132', 'PAG136', 'PAG150', 'PAG149', 'PAG148', 'PAG145', 'PAG144', 'PAG122', 'PAG174', 'PAG163', 'PAG173', 'PAG164', 'PAG166', 'PAG176', 'PAG167', 'PAG141', 'PAG171', 'PAG138', 'PAG120', 'PAG137', 'PAG177', 'PAG172', 'PAG123', 'PAG121', 'RMK386', 'PAG180', 'PAG182', 'PAG181', 'PAG183', 'PAG179', 'PAG178', 'KTR071', 'RMK388', 'RMK389', 'PAG184', 'PAG185', 'PAG186', 'PAG187', 'PAG188', 'PAG189', 'KTR070', 'RMK392', 'KTR069', 'RMK395', 'RMK394', 'RMK393', 'RMK390', 'RMK391'], dtype=object) For futher information, check out the `Jupyter Notebook tutorial `__. Docstrings ~~~~~~~~~~ WaterConnect web service utilities ---------------------------------- .. autoclass:: sa_gwdata.WaterConnectSession :members: Any calls to :meth:`sa_gwdata.WaterConnectSession.get` return an :class:`sa_gwdata.Response` object: .. autoclass:: sa_gwdata.Response() :members: Well identifiers ---------------- .. autoclass:: sa_gwdata.Well :members: .. autoclass:: sa_gwdata.UnitNo :members: .. autoclass:: sa_gwdata.ObsNo :members: