Skip to main content

A python wrapper for the CDStar API

Project description


Python client library for CDStar

Build Status PyPI


    from pycdstar.api import Cdstar

    # Initialize a client object, with connection info from a config file
    cdstar = Cdstar()

    # create a new object
    obj = cdstar.get_object()
    # with initially no associated metadata
    assert obj.metadata is None

    # assigning to the metadata property will create a metadata record
    obj.metadata = {"creator": "pycdstar"}

    # retrieve the now existing object
    obj = cdstar.get_object(
    assert 'creator' in obj.metadata

    # again, initially the bitstreams property is an empty list
    assert not obj.bitstreams

    # we add a bitstream by uploading a local file
    bitstream = obj.add_bitstream(fname='README.txt')
    # and re-read the object
    # a bitstreams read method returns an iterator to allow for streaming,
    # i.e. chunked downloads
    assert ''.join(list(
    assert len(obj.bitstreams) == 1

    # to make sure the newly created resources are properly indexed, we allow
    # for a short delay

    # now we search for a string we know to exist in the uploaded bitstream
    res ='ssh')
    assert len(res)
    # the first element in the search results list has the bitstream as
    # associated resource
    assert 'ssh' in ''.join(list(res[0]

    query = 'pycdstar'
    res =, index='metadata')
    assert len(res)
    res =, index='fulltext')
    assert not len(res)

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pycdstar, version 1.0.1
Filename, size File type Python version Upload date Hashes
Filename, size pycdstar-1.0.1.tar.gz (11.1 kB) File type Source Python version None Upload date Hashes View
Filename, size pycdstar-1.0.1-py3-none-any.whl (14.0 kB) File type Wheel Python version py3 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page