Skip to main content

Library for querying CERL infrastructure

Project description

CERL library

Python bindings for the Consortium of European Research Library's API.

See /docs/docs.ipynb for a Jupyter notebook with additional documentation

Basic example

from cerl import ample_query, ample_record, ids_from_result, by_dot, the

# Connect to any AMPLE instance
ct = 'data.cerl.org/thesaurus'
# Run a search query
result = ample_query(ct, 'Purslowe, Elizabeth')
for idx in ids_from_result(result):
    # Download the record as a Python dict
    record = ample_record(ct, idx)
    # Access the record by dot notation
    cid = the(by_dot(record, '_id'))
    assert cid == idx

Installation

pip3 install cerl

Features

  • Access to any AMPLE instance by specifying the host string (e.g. "data.cerl.org/thesaurus")
    • Some databases hardcoded as syntactic sugar:
      • CT
      • ISTC
      • HOLDINST
      • MEI
  • Use the standard search syntax with ample_query
    • The same databases hardcoded as syntactic sugar: ct_query etc.
  • Download records as Python dict objects with ample_record
    • Again, ct_record etc.
  • Download records in other formats with ample_record_export
    • Again, ct_record_export etc.
    • Export formats supported (but not all for each database):
      • rdf/ttl
      • rdf/xml
      • rdf/jsonld
      • json
      • yaml
      • unimarc
  • Access to record fields using the dot notation from search syntax via by_dot (NOTE: always returns a list of results)
    • If you know there is only one object/value being returned, wrap in the
    • Syntactic sugar around some fields:
      • Resolve CT record types with ct_record_type
      • Get the CID (CERL ID) with cid
  • Add a timestamp to a record after modifying it with add_timestamp

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

cerl-0.0.5.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cerl-0.0.5-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file cerl-0.0.5.tar.gz.

File metadata

  • Download URL: cerl-0.0.5.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.5

File hashes

Hashes for cerl-0.0.5.tar.gz
Algorithm Hash digest
SHA256 e41d2e92ea9bac621c2e1c0aceb86920aa065ebbcc0b3ba166a8a6806c489c8c
MD5 47206490c282faee5b1ded726c6663ed
BLAKE2b-256 b028d6f6682febec2436ad65a8f32467aef160b7edf416f39d1a8c8760e82aa2

See more details on using hashes here.

File details

Details for the file cerl-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: cerl-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.5

File hashes

Hashes for cerl-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 4efb63eaf1ff1e0903a6749a26f6725a3d04c0cd94e0aac81920a67ccc99e6dd
MD5 e8eca9ab29ec7698d062a59d3d194329
BLAKE2b-256 b1aadb7d2503eebae186860a9115911933b09e15ef3977c3ebe901837295e5de

See more details on using hashes here.

Supported by

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