Skip to main content

Invenio module for OAI-PMH metadata harvesting between repositories.

Project description

Invenio module for OAI-PMH metadata harvesting between repositories.

This is an experimental development preview release.


This module allows you to easily harvest OAI-PMH repositories, thanks to the Sickle module, and feed the output into your ingestion workflows, or simply to files. You can configure your OAI-PMH sources via a web-interface and run or schedule immediate harvesting jobs via command-line or regularly via Celery beat.

Harvesting is simple

inveniomanage oaiharvester get -u -i > my_record.xml

This will harvest the repository for a specific record and print the records to stdout - which in this case will save it to a file called my_record.xml.

If you want to have your harvested records saved in a directory automatically, its easy:

inveniomanage oaiharvester get -u -i -o dir

Note the output -o parameter that specifies how to output the harvested records. The three options are:

  • Sent to a workflow (E.g. -o workflow)

  • Saved files in a folder (E.g. -o dir)

  • Printed to stdout (default)

Harvesting with workflows

inveniomanage oaiharvester get -u -i -o workflow

When you send an harvested record to a workflow you can process the harvested files however you’d like and then even upload it automatically into your own repository.

This module already provides some

Managing OAI-PMH sources

If you want to store configuration for an OAI repository, you can use the administration interface available via the admin panel. This is useful if you regularly need to query a server.

Here you can add information about the server URL, metadataPrefix to use etc. This information is also available when scheduling and running tasks:

inveniomanage oaiharvester get -n somerepo -i

Here we are using the -n, –name parameter to specify which stored OAI-PMH source to query, by name.


If you need to schedule or run harvests via Python, you can use our API:

from invenio_oaiharvester.api import get_records
for rec in get_records(identifiers=[""],
    print rec.raw


Version 0.1.0 (release 2015-08-14)

  • Initial public release

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

invenio-oaiharvester-0.1.0.tar.gz (41.8 kB view hashes)

Uploaded source

Built Distribution

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