Skip to main content

lizard-connector

warning:

Lizard API version 2 will deprecate on January 31th 2021, please switch to the default API version 3

This can be done by either omitting the version parameter when creating a Client instance, or creating a Client instance with version 3 specified:

Introduction

Connector to Lizard api (e.g. https://demo.lizard.net/api/v3) for python.

Includes: - Client (experimental / alpha) - Endpoint (Easy access to Lizard api endpoints) - Connector (http handling) - parsers to parse the json obtained from Endpoint queries - queryfunctions for special cases such as geographical queries and time related queries other queries can be input as a dictionary - callbacks for async data handling.

When pandas, numpy are installed the Client returns pandas.DataFrame`s and/or `numpy.array`s in a `ScientifResult object.

Example usage

An example jupyter notebook can be found Example_EN.ipynb or in Dutch: Voorbeeld_NL.ipynb.

Use one endpoints https://demo.lizard.net/api/v3 in Python with the Endpoint class:

from lizard_connector import Client
import lizard_connector.queries
import datetime

# Fill in your username and password (your password will be prompted)
client = lizard_connector.Client(
    username = "example.username"
)

endpoint = 'timeseries'
south_west = [48.0, -6.8]
north_east = [56.2, 18.9]

organisation_id = 'example_organisation_uuid'

start = datetime.datetime(1970, 1, 1)
end = datetime.datetime.now()

relevant_queries = [
    lizard_connector.queries.in_bbox(south_west, north_east, endpoint),
    lizard_connector.queries.organisation(organisation_id, endpoint),
    lizard_connector.queries.datetime_limits(start, end)
]

results = client.timeseries.get(*relevant_queries)

Usage with PyQT (for Qgis plugins)

You can create a QThread worker like so:

from PyQt4.QtCore import QThread
from PyQt4.QtCore import pyqtSignal


class Worker(QThread):
    """This class creates a worker thread for getting the data."""
    output = pyqtSignal(object)

    def __init__(self, parent=None, endpoint=None, *querydicts, **queries):
        """Initiate the Worker."""
        super(Worker, self).__init__(parent)
        self._endpoint = endpoint
        self._querydicts = querydicts
        self._queries = queries

    def run(self):
        """Called indirectly by PyQt if you call start().
        This method retrieves the data from Lizard and emits it via the
        output signal as dictionary.
        """
        data = self._endpoint._synchronous_get_async(
            *self._querydicts, **self._queries)
        self.output.emit(data)

Credits

Changelog of lizard-connector

0.7.3 (2020-12-17)

  • Removed mentions of v2 API from docs.

0.7.2 (2020-12-17)

  • Added FutureWarnings when using the v2 API (default is V3)

  • Renamed REAMDE.md to README.rst

0.7.1 (2018-04-17)

  • Nothing changed yet.

0.7 (2018-04-17)

  • Added Client.

  • Added parsers (scientific, json).

  • Added callbacks.

  • Renamed Endpoint download… methods to get….

0.6 (2018-02-07)

  • Add explicit py2/3 imports to mitigate problems with the future library.

0.5 (2017-10-16)

  • Compatible with python 2.7.

  • Refactored pagination.

  • Added Async downloads with callback.

  • Removes max_result on Endpoint initialisation.

0.4 (2016-06-05)

  • Fixed bug in iteration over paginated results.

  • When all_pages is set to False all methods involving get return the object as an iterator.

0.3 (2016-05-06)

  • Http base urls are not allowed, throws exception when baseurl is not secure (i.e. does not start with https).

  • Fixed a bug that caused a get to run two times.

0.2 (2016-05-04)

  • Added Datatype classes.

  • Renamed Endpoint get and post to download and upload.

0.1 (2016-03-29)

  • Basic setup

  • Added tests

  • Initial project structure created with nensskel 1.37.dev0.

Release files for lizard-connector 0.7.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lizard-connector 0.7.3
File Size Uploaded
lizard-connector-0.7.3.tar.gz 25.8 kB Details

Release files / lizard-connector-0.7.3.tar.gz

Download URL lizard-connector-0.7.3.tar.gz
Size 25.8 kB
Tags Source
SHA-256 checksum
How to use checksums
5238adb67da394c593e5d7ea7e45762d19d83e97c98e5c5d4a5c4c9230f15111
BLAKE2b-256 checksum
How to use checksums
d8ae745fba3f0073621c5d6ca7f2f388a154cef0366e177ebf7f3d0e603ff8f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.8.0 tqdm/4.29.0 CPython/3.6.9

Release history Release notifications | RSS feed

This release

0.7.3 This release

1 release file

0.7.2

1 release file

0.7.1

1 release file

0.7

1 release file

0.6

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page