Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

A lightweight OAI client library for Python

Project Description

Sickle: OAI-PMH for Humans

Sickle is a lightweight OAI-PMH client library written in Python. It has been designed for conveniently retrieving data from OAI interfaces the Pythonic way:

>>> from sickle import Sickle
>>> sickle = Sickle('')
>>> records = sickle.ListRecords(metadataPrefix='oai_dc')


  • Easy harvesting of OAI-compliant interfaces
  • Support for all six OAI verbs
  • Convenient object representations of OAI items (records, headers, sets, …)
  • Automatic de-serialization of Dublin Core-encoded metadata payloads to Python dictionaries
  • Option for ignoring deleted items


pip install sickle



Documentation is available at Read the Docs



Version 0.6.2

August 11, 2016

Version 0.6.1

November 13, 2016

  • it is now possible to pass any keyword arguments to requests
  • the encoding used to decode the server response can be overridden

Version 0.5

November 12, 2015

  • support for Python 3
  • consider resumption tokens with empty tag bodies

Version 0.4

May 31, 2015

  • bug fix: resumptionToken parameter is exclusive
  • added support for harvesting complete OAI-XML responses

Version 0.3

April 17, 2013

  • added support for protected OAI interfaces (basic authentication)
  • made class mapping for OAI elements configurable
  • added options for HTTP timeout and max retries
  • added handling of HTTP 503 responses

Version 0.2

February 26, 2013

  • OAI items are now represented as their own classes instead of XML elements
  • library raises OAI-specific exceptions
  • made lxml a required dependency

Version 0.1

February 20, 2013

First public release.

Release History

Release History

This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
Sickle-0.6.2.tar.gz (106.9 kB) Copy SHA256 Checksum SHA256 Source Aug 11, 2017

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting