A Scythe for harvesting OAI-PMH repositories.
Project description
oaipmh-scythe: A Scythe for harvesting OAI-PMH repositories.
Welcome to oaipmh-scythe, an updated and modernized version of the original
sickle, now with additional features and ongoing maintenance.
| CI | |
|---|---|
| Package | |
| Meta |
oaipmh-scythe 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 oaipmh_scythe import Scythe
with Scythe("https://zenodo.org/oai2d") as scythe:
records = scythe.list_records()
next(records)
# <Record oai:zenodo.org:4574771>
Features
- 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
Requirements
Python >= 3.10
oaipmh-scythe is built with:
Installation
You can install oaipmh-scythe from PyPI using uv:
uv add oaipmh-scythe
or with pip:
python -m pip install oaipmh-scythe
Documentation
The documentation is made with Material for MkDocs and is hosted by GitHub Pages.
Similar Projects
There are a couple of similar projects available on PyPI and GitHub, e.g. via the topics oai-pmh and oai-pmh-client. Among them are these implementations in Python:
| Project | Description | Last commit |
|---|---|---|
| sickle | oaipmh-scythe is a fork of sickle |
|
| pyoai | sickle was inspired by pyoai |
|
| pyoaiharvester | oai-pmh harvester CLI | |
| ddblabs-ometha | oai-pmh harvester with CLI and TUI | |
| oai-harvest | uses pyoai internally |
|
| oai-pmh-harvester | uses sickle internally |
There are also similar projects available in Java and PHP.
Acknowledgments
This is a fork of sickle which was originally written by Mathias Loesch.
License
oaipmh-scythe is distributed under the terms of the BSD license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file oaipmh_scythe-0.14.2.tar.gz.
File metadata
- Download URL: oaipmh_scythe-0.14.2.tar.gz
- Upload date:
- Size: 18.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1e53bb03503788226ef3dc3eeb2da6b8da13184a86d96374202443ec629fb54
|
|
| MD5 |
858168eb48c03320fe14c88336b7661b
|
|
| BLAKE2b-256 |
5dd26c1955a227c1adc5f40c75a824a41d84046876a7280db73776cd730c7011
|
Provenance
The following attestation bundles were made for oaipmh_scythe-0.14.2.tar.gz:
Publisher:
publish.yml on afuetterer/oaipmh-scythe
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
oaipmh_scythe-0.14.2.tar.gz -
Subject digest:
e1e53bb03503788226ef3dc3eeb2da6b8da13184a86d96374202443ec629fb54 - Sigstore transparency entry: 1272642015
- Sigstore integration time:
-
Permalink:
afuetterer/oaipmh-scythe@343a73aba8a0c17fdb85f9d7a578aa960ae7fd2a -
Branch / Tag:
refs/tags/0.14.2 - Owner: https://github.com/afuetterer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@343a73aba8a0c17fdb85f9d7a578aa960ae7fd2a -
Trigger Event:
release
-
Statement type:
File details
Details for the file oaipmh_scythe-0.14.2-py3-none-any.whl.
File metadata
- Download URL: oaipmh_scythe-0.14.2-py3-none-any.whl
- Upload date:
- Size: 21.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ca36451ee43a872238feb58cf1a41d7020b142f195452ffb0e3cdb605e6a48f
|
|
| MD5 |
f194feb49e69859effad1b725acf6877
|
|
| BLAKE2b-256 |
833ce8af3f4e6b8870f162ea3b6f6c493b420ad40d96cd0de8e378832a5e2d6c
|
Provenance
The following attestation bundles were made for oaipmh_scythe-0.14.2-py3-none-any.whl:
Publisher:
publish.yml on afuetterer/oaipmh-scythe
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
oaipmh_scythe-0.14.2-py3-none-any.whl -
Subject digest:
6ca36451ee43a872238feb58cf1a41d7020b142f195452ffb0e3cdb605e6a48f - Sigstore transparency entry: 1272642074
- Sigstore integration time:
-
Permalink:
afuetterer/oaipmh-scythe@343a73aba8a0c17fdb85f9d7a578aa960ae7fd2a -
Branch / Tag:
refs/tags/0.14.2 - Owner: https://github.com/afuetterer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@343a73aba8a0c17fdb85f9d7a578aa960ae7fd2a -
Trigger Event:
release
-
Statement type: