Skip to main content

Fetch Cavelink data by parsing the webpage of sensors.

Project description

lgtm Alerts

code quality

travis-ci-badge

What is this repository for?

This python module gather the data by parsing the webpage. You will then be able to display the data on your dashboard or store it to your own database. I also provide code samples to better explain this -see directory ‘samples’-.

How do I get set up?

To ensure a proper setup, I recommend the use of virtualenv (but optionnal).

sudo pip install cavelink

Then you can use the module that way:

from cavelink import cavelink as cl

webpage="http://www.cavelink.com/cl/da.php?s=142&g=10&w=1&l=10"
nb_rows = 5

cavelink = cl.Sensor(webpage, nb_rows)
motiers = cavelink.getJSON(datefmt='human')  # or datefmt='epoch'

print(motiers)

You will get a the measurements and the sensor details formatted in JSON.

{
   "measures": {
      "22.12.2018 16:00": 6.3,
      "22.12.2018 16:30": 5.67,
      "22.12.2018 17:00": 6.0,
      "22.12.2018 17:30": 5.45,
      "22.12.2018 18:00": 5.87
   },
   "sensor": {
      "group": "10",
      "number": "1",
      "station": "142",
      "unit": "C"
   }
}

You can also fetch additionnal information, also available from the page. Please note that the following data is provided in JSON object as well. This is:

>>> print(cavelink.station)
>>> print(cavelink.group)
>>> print(cavelink.number)
>>> print(cavelink.unit)

To parse the measures, you can use this sample:

import json

# convert the json-formatted string to a python dictionnay
motiers_json = json.loads(motiers)

# parse measures
for timestamp in motiers_json['measures']:
   print('%s -> %s %s' % (timestamp,
                        motiers_json['measures'][timestamp],
                        motiers_json['sensor']['unit']))

Contribution guidelines

Feel free to submit issue or better, some pull requests !

Contributors

Who do I talk to?

sebastien at pittet dot org

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

cavelink-1.1.2.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

cavelink-1.1.2-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

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