用于在存储库之间获取OAI-PMH元数据的Invenio模块。

invenio-oaiharvester的Python项目详细描述


https://img.shields.io/travis/inveniosoftware/invenio-oaiharvester.svghttps://img.shields.io/coveralls/inveniosoftware/invenio-oaiharvester.svghttps://img.shields.io/github/tag/inveniosoftware/invenio-oaiharvester.svghttps://img.shields.io/pypi/dm/invenio-oaiharvester.svghttps://img.shields.io/github/license/inveniosoftware/invenio-oaiharvester.svg

用于在存储库之间获取OAI-PMH元数据的Invenio模块。

这是一个实验性的开发预览版本。

功能

这个模块允许您轻松地获取oai-pmh存储库,这要感谢Sickle模块,并为 输出到您的摄取工作流中,或直接输出到文件中。您可以配置 您的OAI-PMH通过Web界面提供资源,并运行或计划立即捕获作业 通过命令行或定期通过Celery beat

收获很简单

inveniomanage oaiharvester get -u http://export.arxiv.org/oai2 -i oai:arXiv.org:1507.07286 > my_record.xml

这将获取特定记录的存储库并将记录打印到stdout,在本例中,stdout会将其保存到名为my_record.xml的文件中。

如果您想将收获的记录自动保存到目录中,这很简单:

inveniomanage oaiharvester get -u http://export.arxiv.org/oai2 -i oai:arXiv.org:1507.07286 -o dir

注意output-o参数,该参数指定如何输出收获的记录。这三个选项是:

  • Sent to a workflow (E.g. -o workflow)
  • Saved files in a folder (E.g. -o dir)
  • Printed to stdout (default)

使用工作流获取

inveniomanage oaiharvester get -u http://export.arxiv.org/oai2 -i oai:arXiv.org:1507.07286 -o workflow

当您向工作流发送已收获的记录时,您可以处理已收获的记录 文件,但你想,然后甚至自动上传到你自己的存储库。

本模块已经提供了一些

管理OAI-PMH来源

如果要存储OAI存储库的配置,可以使用 通过管理面板提供管理界面。如果您经常需要查询服务器,这将非常有用。

在这里,您可以添加有关服务器URL、要使用的元数据前缀等的信息。在计划和运行任务时,也可以使用此信息:

inveniomanage oaiharvester get -n somerepo -i oai:example.org:1234

在这里,我们使用-n,-name参数按名称指定要查询的存储OAI-PMH源。

API

如果您需要通过python计划或运行收获,可以使用我们的api:

frominvenio_oaiharvester.apiimportget_recordsforrecinget_records(identifiers=["oai:arXiv.org:1207.7214"],url="http://export.arxiv.org/oai2"):printrec.raw

更改

版本0.1.1(2015-08-25发布)

  • 添加缺少的invenio_upgrader依赖项并修正以前的升级 将配方分离成独立的包。
  • 修复因Invenio工作流分离而导致的导入。(9)

版本0.1.0(2015-08-14发布)

  • 首次公开发行

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java同步块与私有不可变对象和同步方法的差异   OracleDataSource、OracleUCP、Commons DBCP和Tomcat连接池之间的java差异?   java在文本文件中写入对象   java访问web服务   如何用java代码并行读取拼花地板文件   spring是否可以将运行时未知的Avro消息转换为特定的Java类   具有复杂对象的java Spring数据MongoDB addToSet()   java ArrayList是否删除元素,是否向下移动列表?   Vaadin中按钮的java多行标题不起作用   java为什么要使用@PropertySource而不是PropertyPlaceHolderConfigure?   java如何检查网站链接是否有数据(图片)或网站是否无效?   java如何禁用对jsp页面的直接访问?   用java实现matlab递归文件夹读取。伊奥。文件   为什么是java。伊奥。FileDescriptor的构造函数是公共的吗?   在java中关闭扫描程序时无法访问的代码?   搜索Java模拟退火接受概率