Pypi version
Travis build status
KB-Python-API is a simple API for Python, the API provides easy access to free and CC-BY-NC-ND datasets provided by the National Library of the Netherlands (KB).
It relies on the back-end infrastructure of the KB which consists of an SRU and OAI-MPH service. The KB Python API makes it easy to interact with historical data, for more information on the provided datasets and data-rights take a look at the DataServices page of the KB.
For example usage have a look at the provided example.py file, or consult the /test directory.
This package is also available from the pypi website. To do a quick install:
pip install kb
>>> from kb.nl.api import oai
>>> from kb.nl.helpers import alto_to_text
>>> oai.list_sets()
['ANP', 'BYVANCK', 'DPO', 'SGD']
>>> records = oai.list_records("ANP")
>>> records.identifiers[:3]
['anp:1937:10:01:1', 'anp:1937:10:01:2', 'anp:1937:10:01:3']
>>> len(oai.resumptiontoken)
42
>>> record = oai.get(records.identifiers[0])
>>> alto_record = record.alto
>>> alto_to_text(alto_record[0]).split("\\n")[1][:27]
u' RADIO 1 van 1 Ootober 1937'
>> image_record = record.image
>>> len(image_record)
721035
>>> from kb.nl.api import sru
>>> from kb.nl.helpers import alto_to_text
>>> response = sru.search("Beatrix AND Juliana AND Bernhard AND telegram", "ANP")
>>> for record in response.records:
... print("Date: %s" % record.date)
... print("Abstract: %s" % record.abstract)
... print("Title: %s" % record.title)