政府数字服务提供的登记处数据读取客户端
项目描述
用法
openregister_client.registers.OpenRegister 是访问单个寄存器的基类,它忽略字段数据类型信息。openregister_client.registers.Register 和 openregister_client.registers.AlphaRegister 使用“register”寄存器来发现可用的寄存器及其项目应包含的字段数据类型。返回的记录、条目和项目(记录中实际包含的数据)是 dict 子类,提供了类型化的属性以便更容易地访问寄存器数据。
目前仅兼容 Python 3.6 及以上版本。
使用 pip install openregister-client 进行安装。
使用示例
# direct register usage; field types will not have correct types, but data can be loaded more simply
from openregister_client.registers import OpenRegister
country_register = OpenRegister(name='country')
country_record = country_register.get_record('GB')
print('The official name for GB is %s' % country_record.item.official_name)
if not country_record.item.is_current:
print('This country is not currently recognised')
# using register auto-discovery to process fields and datatypes
from openregister_client.registers import Register
register = Register()
territory_register = register.get_register('territory')
territory_items = sorted(map(lambda record: record.item, territory_register.get_records()), key=lambda item: item.territory)
for territory in territory_items:
print('The official name for territory %s is %s' % (territory.territory, territory.official_name))
# make a Django model class; works best when using auto-discovery
from openregister_client.django_compat.model_factory import ModelFactory
from openregister_client.registers import Register
country_register = Register().get_register('country')
with open('models.py', 'wt') as f:
f.write(ModelFactory(country_register).get_model_code())
# an API key can be provided when instantiating a register class
country_register = OpenRegister(name='country', api_key='YOUR API KEY')
未实现缓存。库的用户可以存储查询结果或继承 OpenRegister.request 来添加缓存。
不支持消费非 JSON 输入格式,可能也不需要。
开发
请向 GitHub 报告错误和发起 pull 请求。
使用 python setup.py test 运行所有测试。
通过更新 openregister_client/__init__.py 中的 VERSION 元组并在 GitHub 上发布版本来分发新版本(这将触发 GitHub Actions 工作流程以自动上传)。或者,在本地运行 python setup.py sdist bdist_wheel upload。
待办事项
由于已知条目和记录的数量,请不要分页超过末尾。
可能将最低 Python 版本降低到 3.4 或 3.5;使用 typing 模块
参考
版权
版权所有 (C) 2020 HM 政府(司法部数字与技术)。有关更多信息,请参阅 LICENSE.txt。
项目详情
关闭
openregister-client-0.4.tar.gz 的哈希
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 4c90b101364e0465590b922441fd7e6daa406bf192160cf5cb2e6efb8bf8690f |
|
| MD5 | 8e12b55c073c54344cd9c780e734f370 |
|
| BLAKE2b-256 | 50bb162fb85dd400fc8f28249505a733b6918bf1e9efcc880f1983222d3ce120 |