跳转到主要内容

Annotator的后端数据库(http://annotatorjs.org)

项目描述

Annotator存储

这是Annotator的后端存储。

功能大致可以分为两部分

  1. 一个包装Elasticsearch的抽象层,用于轻松管理注释存储。它具有授权功能,可以根据权限设置过滤搜索结果。

  2. 一个用于暴露HTTP API的Flask蓝图,该API用于注释存储。要使用此功能,请使用[flask]选项构建此包。

开始使用

您需要安装Python(Python 2 >=2.6或Python 3 >=3.3)和Elasticsearch(>=1.0.0)的最新版本。

开始使用最快的办法需要pip和virtualenv工具(使用easy_install virtualenv将同时获取它们)。在仓库根目录下运行以下命令

virtualenv pyenv
source pyenv/bin/activate
pip install -e .[flask]
cp annotator.cfg.example annotator.cfg
python run.py

您应该会看到类似以下的内容

* Running on http://127.0.0.1:5000/
* Restarting with reloader...

如果您想自定义Annotator Store的配置,请将更改应用到或深入到

此外,环境变量会覆盖默认的socket绑定地址<127.0.0.1>和端口<5000>。

存储API

Store API旨在与Annotator兼容。注释存储是一个JSON协议的REST API,默认挂载在。有关详细信息,请参阅Annotator文档

运行测试

我们使用nosetests来运行测试。您可以简单地pip install -e .[testing],确保ElasticSearch正在运行,然后

$ nosetests
......................................................................................
----------------------------------------------------------------------
Ran 86 tests in 19.171s

OK

或者(最好是),您应该安装Tox,然后运行tox。这将运行测试,针对已安装的多个Python版本(如果有)。

如果您发现测试在您的机器上没有全部通过,请提交问题,确保包括pip freeze的输出。

变更日志

本项目中所有显著的更改都将记录在此文件中。本项目努力遵守语义版本控制

0.14.2 2015-07-17

  • 修复:Annotation.search不再修改传递的查询。

  • 修复/破坏性更改:Document.get_by_uri()不再为空结果集返回列表,而是返回None

0.14.1 2015-03-05

  • 修复:文档插件不再丢弃没有类型的链接。Annotator客户端从文档href生成一个无类型的链接。(#116)

  • 新增:搜索端点现在支持‘before’和‘after’查询参数,可以用来返回在特定时间段内创建的注释。

0.14 - 2015-02-13

  • 新增:搜索端点现在支持‘sort’和‘order’查询参数,可以用来控制返回结果的排序顺序。

  • 修复:以前在查找等效文档时只返回一个文档(#110)。现在Document模型跟踪所有发现的等效文档,并保持每个文档对象与它们都保持最新。

  • 破坏性更改:Document.get_all_by_uris()不再存在。使用Document.get_by_uri(),它应该返回包含所有等效URI的单个文档。(您可能需要通过获取所有文档并重新保存它们来更新您的索引。)

  • 修复:当提供‘fields’参数时,search_raw端点不再抛出异常。

0.13.2 - 2014-12-03

  • 避免当Annotator作为库而不是独立应用程序使用时的重新索引时的混淆错误。(#107)

0.13.1 - 2014-12-03

  • 即使目标存在,Reindexer也可以运行。

0.13.0 - 2014-12-02

  • 对reindex.py进行了一些轻微的修改,以简化其子类化。

0.12.0 - 2014-10-06

  • 添加了一个用于迁移/重新索引elasticsearch的工具(reindex.py)(#103)。

  • 商店返回更合适的HTTP响应码(#96)。

  • 取消了对1.0.0之前版本的ElasticSearch的支持(#92)。

  • 默认的搜索查询已从“匹配所有”的词过滤改为“匹配查询”的集合,从而更自由地解释查询(#89)。

  • 为了提供更一致的区分大小写的行为,默认的Elasticsearch注释字段分析器已更改为“keyword”(#73, #88)。

  • 将Flask设为可选依赖项:现在可以在不使用Flask的情况下使用项目的持久化组件(#76)。

  • Python 3兼容性(#72)。

0.11.2 - 2014-07-25

  • 安全:修复了允许认证用户覆盖他们没有权限的注释的漏洞(#82)。

0.11.1 - 2014-04-09

  • 修复了对位于HTTP Basic认证后面的ElasticSearch实例的支持。

0.11.0 - 2014-04-08

  • 添加了对ElasticSearch 1.0的支持。

  • 创建更改日志。

项目详情


下载文件

下载适用于您平台的自定义文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

此版本未提供源分发文件。请参阅生成分发存档的教程

构建分发

annotator-0.14.2-py2.py3-none-any.whl (22.5 kB 查看哈希

上传 Python 2 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页