Skip to main content

ZDB Hydra API Client

Project description

Under Development

zdbpydra is a Python package and command line utility that allows to access JSON-LD data (with PICA+ data embedded) from the German Union Catalogue of Serials (ZDB) via its Hydra-based API (beta).

Installation

… via SSH

pip install -e git+ssh://git@github.com/herreio/zdbpydra.git#egg=zdbpydra

… or via HTTPS

pip install -e git+https://github.com/herreio/zdbpydra.git#egg=zdbpydra

Usage Examples

Command Line

# fetch metadata of serial title
zdbpydra --id "2736054-4"

# fetch metadata of serial title (pica only)
zdbpydra --id "2736054-4" --pica

# query metadata of serial titles (cql-based)
zdbpydra --query "psg=ZDB-1-CPO"
# print help message
zdbpydra --help

Help Message

usage: zdbpydra [-h] [--id ID] [--query QUERY] [--scroll [SCROLL]]
                [--stream [STREAM]] [--pica [PICA]] [--pretty [PRETTY]]

Fetch JSON-LD data (with PICA+ data embedded) from the German Union Catalogue
of Serials (ZDB)

optional arguments:
  -h, --help         show this help message and exit
  --id ID            id of serial title (default: None)
  --query QUERY      cql-based search query (default: None)
  --scroll [SCROLL]  scroll result set (default: False)
  --stream [STREAM]  stream result set (default: False)
  --pica [PICA]      fetch pica data only (default: False)
  --pretty [PRETTY]  pretty print output (default: False)

Interpreter

import zdbpydra
# fetch metadata of serial title
serial = zdbpydra.title("2736054-4")
# fetch metadata of serial title (pica only)
serial_pica = zdbpydra.title("2736054-4", pica=True)
# fetch result page for given query
result_page = zdbpydra.search("psg=ZDB-1-CPO")
# fetch all result pages for given query
result_page_set = zdbpydra.scroll("psg=ZDB-1-CPO")
# iterate serial titles found for given query
for serial in zdbpydra.stream("psg=ZDB-1-CPO"):
    print(serial.title)

Background

See Hydra: Hypermedia-Driven Web APIs by Markus Lanthaler for more information on Hydra APIs in general.

Have a look at the API documentation and CQL documentation (both in german) for more information on using the ZDB JSON interface. For details regarding the LD schema, see the local context file.

Information on the PICA-based ZDB-Format can be found in the corresponding cataloguing documentation or in the PICA+/PICA3 concordance (both in german).

Usage Terms

ZDB metadata

All metadata in the German Union Catalogue of Serials is available free of charge for general use under the Creative Commons Zero 1.0 (CC0 1.0) license. Most of the holding data in the ZDB is also freely available. A corresponding tag is incorporated into the data record itself. (Source)

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

zdbpydra-0.1.2.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

zdbpydra-0.1.2-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

Details for the file zdbpydra-0.1.2.tar.gz.

File metadata

  • Download URL: zdbpydra-0.1.2.tar.gz
  • Upload date:
  • Size: 20.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.5.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.6.12

File hashes

Hashes for zdbpydra-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2a15b5e7d85259d846b77298e15a62c5429693203eb4e4a4fe16d95cf5828ad7
MD5 e60c08aa87b857e9e93cef08f581f795
BLAKE2b-256 de71b510fb8ad28a61b1cfe03a7c6db1572e76a954ae465012ce019b8635919f

See more details on using hashes here.

File details

Details for the file zdbpydra-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: zdbpydra-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 21.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.5.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.6.12

File hashes

Hashes for zdbpydra-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b0555e026efad29782282e97d35a5dc0415912d4e2291f0f0f5b16b4ab4b3b22
MD5 a364eac650b76a80d8430b2a20a18ee2
BLAKE2b-256 78df754675d5e312fa29986c557bc93ced0ffde05b1ec72d6d56525e0c77d7e5

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