vufind-org/vufindharvest

VuFind Harvest 工具

v5.3.0 2024-03-08 14:53 UTC

README

CI 状态 VuFindHarvest

简介

VuFindHarvest 包含 OAI-PMH 收集逻辑。这是 VuFind 项目(https://vufind.org)的一部分,但也可能作为一个独立的工具或集成到其他处理元数据收集的软件中使用。

安装

将此库集成到您的项目中的推荐方法是使用 Composer(《https://getcomposer.org.cn》)。如果您希望将其作为一个独立的工具使用,只需克隆存储库并运行 composer installphp composer.phar install(根据您的 Composer 设置)来下载依赖项。

概念

此工具旨在允许以管道方式处理 OAI-PMH 记录。其任务是收集来自一个或多个存储库的元数据到一个或多个目录中。它可以支持每条记录一个文件或一个文件中多个记录的方法。可以通过某些配置选项(主要是在需要时将数据从 OAI-PMH 标头复制到收集的记录本身)来处理和增强记录。

包含收集记录的每个目录还包含一个 last_harvest.txt 文件,它记录最近收集的记录日期。这使得工具可以在后续运行时重新执行,以执行增量更新并检索新内容。

中断的收集有时可以通过在收集目录中存在的 last_state.txt 文件来恢复,该文件将在工具异常终止后存在。

通过创建包含已从系统中删除的记录 ID 的 ".delete" 文件支持已删除的记录。

用法

此包包括一个 bin/harvest_oai.php 脚本,它为 OAI-PMH 收集提供了命令行界面。所有收集选项都可以在命令行中提供,或者可以使用 --ini 开关加载包含已保存选项的 .ini 文件。

不使用 .ini 文件进行收集

对于最基本的收集,您需要指定 --url--metadataPrefix 选项,并包含一个目标参数指定记录应收集的位置。有关其他选项,请运行 php bin/harvest_oai.php --help

示例

php bin/harvest_oai.php --url=http://example.com/oai_server --metadataPrefix=oai_dc my_target_dir

使用 .ini 文件进行收集

当指定许多复杂选项或同时收集多个存储库时,使用 .ini 文件配置收集是最佳选择。.ini 选项比纯命令行选项提供更多的灵活性。请注意,在 .ini 驱动的收集期间传递给收集器的任何命令行选项将覆盖 .ini 文件中的等效设置。

有关 .ini 选项的完整列表和一些示例配置,请参阅 /etc/oai.ini 中的示例文件。

当使用 .ini 文件时,如果您在选项列表之后指定了一个参数,则仅使用与参数匹配的配置文件部分,并将记录收集到具有匹配名称的目录中。例如

php bin/harvest_oai.php --ini=/etc/oai.ini OJS

如果您省略了参数,将按顺序收集.ini文件的所有部分。

架构

如果您希望将此代码集成到另一个项目中,或扩展以支持更多选项,以下是最重要的顶级类

以下是VuFindHarvester\OaiPmh\Harvester使用的关键依赖项

几个类使用VuFindHarvester\ConsoleOutput命名空间中的特性和类来帮助处理标准状态输出任务。

历史

请参阅CHANGELOG.md