Skip to main content

Contain files readers for specific sensors files

Project description


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.


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

# 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)


##Main package definition


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


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

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


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

    • 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
    • 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


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.

Filename, size & hash SHA256 hash help File type Python version Upload date
HydroSensorReader- (1.4 MB) Copy SHA256 hash SHA256 Source None Apr 16, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page