A nodejs module for the Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH 2.0). Use this module if you want to harvest metadata from OAI-PMH providers, e.g., arxiv.
Note: This is a fork of oai-pmh.
npm install oai-pmh2
Note: Node >= 10 is required for this module (because it makes use of async generators).
You can run the following script with node -r esm
:
import { OaiPmh } from "oai-pmh2";
async function main() {
const oaiPmh = new OaiPmh("http://export.arxiv.org/oai2");
const identifierIterator = oaiPmh.listIdentifiers({
metadataPrefix: "oai_dc",
from: "2015-01-01",
until: "2015-01-04",
});
for await (const identifier of identifierIterator) {
console.log(identifier);
}
}
main().catch(console.error);
See OaiPmh in oai-pmh.js for all available commands.
Get identifiers of all arxiv articles:
oai-pmh list-identifiers http://export.arxiv.org/oai2 -p arXiv
oai-pmh get-record <baseUrl>
Options:
-i, --identifier <id>
-p, --metadata-prefix <prefix>
oai-pmh identify <baseUrl>
oai-pmh list-identifiers [options] <baseUrl>
Options:
-p, --metadata-prefix <prefix>
-f, --from <DATE> from date YYYY-MM-DD or ISO8601
-u, --until <DATE> from date YYYY-MM-DD or ISO8601
-s, --set <SETSPEC> set specifier, e.g., "math"
oai-pmh list-metadata-formats [options] <baseUrl>
Options:
-i, --identifier <id>
oai-pmh list-records [options] <baseUrl>
Options:
-p, --metadata-prefix <prefix>
-f, --from <DATE> from date YYYY-MM-DD or ISO8601
-u, --until <DATE> from date YYYY-MM-DD or ISO8601
-s, --set <SETSPEC> set specifier, e.g., "math"
oai-pmh list-sets <baseUrl>