用于验证文件与JSON Schema的工具
项目描述
JSON Schema验证器
根据JSON Schema从TypedDict生成Python类型的工具
快速开始
安装
python3 -m pip install --user jsonschema-validator
将JSON schema转换为包含类型的Python文件
jsonschema-validator --help
默认
默认值被导出到Python文件中,然后您可以进行如下操作
value_with_default = my_object.get('field_name', my_schema.FIELD_DEFAULT)
验证
此软件包还提供了一些基于jsonschema的YAML文件验证功能。
附加功能
- 如果文件使用ruamel.yaml加载,则可以获取错误中的行和列号。
- 导出JSON schema中提供的默认值。
import ruamel.yaml
import pkgutil
import jsonschema_validator
schema_data = pkgutil.get_data("<package>", "schema.json")
with open(filename) as data_file:
yaml = ruamel.yaml.YAML() # type: ignore
data = yaml.load(data_file)
errors, data = jsonschema_validator.validate(filename, data, schema)
if errors:
print("\n".join(errors))
sys.exit(1)
pre-commit钩子
此项目提供了pre-commit钩子来自动生成文件。
repos:
- repo: https://github.com/camptocamp/jsonschema-validator
rev: <version> # Use the ref you want to point at
hools:
- id: jsonschema-validator
files: |
(?x)^(
...
)$
贡献
安装pre-commit钩子
pip install pre-commit
pre-commit install --allow-missing-config
prospector
测试应通过。
代码应该是类型化的。
应该使用pytests
测试代码。
项目详情
关闭
jsonschema_validator_new-0.1.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | deac226a3288222e9f1eb73267e496e33a598270529b31629f2407620a6dde37 |
|
MD5 | 6ccbf7eaaf22ceaed33bbe9d92353978 |
|
BLAKE2b-256 | bd358f4f628092cb0be6c26f22c3813fa3e4e04cf52f870baf943e6758ea2a0f |
关闭
jsonschema_validator_new-0.1.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f93e1a4ca92079f28fbad2b43a1733b5d51c6cc4c7fd327689a63a90b77cf4ff |
|
MD5 | ab628bc155113e29c278a70192ba6227 |
|
BLAKE2b-256 | 29607cc7d6855a2e5e39122683708c1a9b32cc0ca7e7f8ed6926ea33680efa3b |