跳转到主要内容

用于验证文件与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 (6.8 kB 查看哈希值)

上传时间

构建分发

jsonschema_validator_new-0.1.0-py3-none-any.whl (7.6 kB 查看哈希值)

上传时间 Python 3

支持者

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