Skip to main content

Contain files readers for specific sensors files

Project description

HydroSensorReader

Build Status Python 3.6 License: GPL v3 Documentation Status

This project aim to provide a simple way to read a scientific file provided by any kind of probe, sensor, or anything used specificly in hydrogeology.

Installation

You can directly install this package with the command: pip install HydroSensorReader.

After the installation, you can use the package by using

import hydsensread as hsr

# File based reader
file_path = 'my_file_path'

# Files Generating Timeseries results
# =====================================

# read CR1000 files
r = hsr.DATCampbellCRFileReader(file_path)

# read Hanna multiparameter probes 
# - (model HI-9828 and HI-9829 tested)
# - Supported extension : '.xls', '.xlsx'
r = hsr.XLSHannaFileReader(file_path)

# read Solinst Levelogger and Barologger files
# - Supported extension : '.lev', '.xle', '.csv'
r = hsr.SolinstFileReader(file_path)

# Plot the results with
r.plot()

# Files Generating Generic results
# =====================================
# read Maxxam laboratory analysis files.
# - Supported extension : '.xls', '.xlsx'
r = hsr.XSLMaxxamFileReader(file_path)


# Web data scrappers 
# These data scrappers use the station name.
station = 'StationName'
r = hsr.GNBWaterQualityStation(station)

##Dependency

##Main package definition

file_reader

Implementation of diffenrents files readers. Each python files contain a main laucher to the the class.

  • compagny_file_reader - Reader of generated files comming from different probes or labs.
  • web_page_reader - Web crawlers in charge of extracting the datas from web sites

file_parser

This package contain the classes responsible of the different files reading. More information abouts these package is available into them

  • abstract_file_parser.py
    • AbstractFileParser - Abstract class used as an interface to implement the others
  • concrete_file_parser.py
    • CSVFileParser
    • TXTFileParser
    • EXCELFileParser
    • WEB_XMLFileParser

site_and_records

This package contain classes defining the domain elements and carry the data describing them

  • site.py
    • Site - A basic site class with the site name a the visited date
    • SensorPlateform - A Plateform is an that can take measurement as a standalone object
    • Sample - Sample as an object manipulated by a laboratory
    • StationSite - Modelisation of a station object
    • StreamFlowStation - This specialized class was created to store the information of the ECCC website
  • records.py
    • Parameter - Class acting as a structure to store parameter (what is observed) and its associated unit
    • Record - A record must have a date, a parameter, an unit and a value.
    • TimeSeriesRecords - The record_date correspond to the first date of the values list. Values are stored as a Dict as following :
      • { date1: value1, date2: value2,...}
    • ChemistryRecord -A chemistry record have a detection limit a report date and an analysis type and all the attributes of a Record

file_example

You have several files examples in this folder used a tests

Work To Do

  • Add a .LAS reader to take care of borehole geophysics files
  • Add a .LAS reader to take care of LiDar data
  • Create a Strategy class so you can input a file and the strategy class select the correct file_reader class
  • Continue documentation...always...

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

HydroSensorReader-1.7.1.12.tar.gz (1.4 MB view details)

Uploaded Source

File details

Details for the file HydroSensorReader-1.7.1.12.tar.gz.

File metadata

File hashes

Hashes for HydroSensorReader-1.7.1.12.tar.gz
Algorithm Hash digest
SHA256 f91fd99a77429f3ba2e060505cc8d8332e52002aa651aba3cf3accf82596a4d8
MD5 70d355062bc18c7bfce178db943754ce
BLAKE2b-256 8cb7460603ce4c06f48207b63352282b65f585650b7b16ba9931967e925ed193

See more details on using hashes here.

Supported by

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